WinRAR命令行参数[原]

时间:2024-03-12 19:36:43

在项目中,需打包,每次使用打包工具很麻烦,直接在生成目录下使用exe就可以了,故编写一个.bat文件来处理就可以了,如下:
将生成文件BOMEXE.exe.

 1@echo off
 2echo    Starting Make BOM update package
 3echo -----------------------------------------------------
 4echo 1. Create temp directory: temp
 5rd //Q temp 
 6
 7md temp 
 8md temp\config 
 9md temp\dll
10
11echo 2. Copy files
12
13copy config\AmountButtonInfo.xml temp\config\AmountButtonInfo.xml
14copy config\MessageDef.cfg.xml temp\config\MessageDef.cfg.xml
15copy config\NSICUState.xml temp\config\NSICUState.xml
16copy config\Template.xml temp\config\Template.xml
17copy config\UIFunctions.xml temp\config\UIFunctions.xml
18copy config\YktServerReturnCode.xml temp\config\YktServerReturnCode.xml
19copy config\TicketInfo.xml temp\config\TicketInfo.xml
20copy config\SysMaintenanceUI.xml temp\config\SysMaintenanceUI.xml
21copy Resources\13Line.bmp
22copy Resources\airportLine.bmp
23
24copy dll\*.dll temp\dll\
25
26copy *.dll temp\
27copy *.pdb temp\
28copy *.bpl temp\
29
30copy NewUI.exe temp\
31copy NewUI.exe.manifest temp\
32copy NewUI.exe.config temp\
33
34echo 3. Create Self Extract File (RAR)
35
36cd temp 
37
38attrib -//D
39winrar a --sfx BOMEXE 
40
41echo 4. Prepare SFX Comments
42
43echo Silent=1 > sfx.txt
44echo Overwrite=1 >> sfx.txt
45rem echo Path=.\ >> sfx.txt
46
47echo 5. Add SFX Comments
48
49winrar c -zsfx.txt BOMEXE.exe 
50
51copy BOMEXE.exe ..\
52
53echo 6. Update package completed!!
54
55echo on 
56pause 
57
取名为MakeVersion.bat,以后直接点击就行了。

附上:命令行各参数用法
  1用法:     rar <命令> -<开关 1> -<开关 N> <压缩文件> <文件>
  2               <@列表文件> <解压路径\>
  3
  4<命令>
  5  a             添加文件到压缩文件
  6  c             添加压缩文件注释
  7  cf            添加文件注释
  8  cw            写入压缩文件注释到文件
  9  d             删除压缩文件中的文件
 10  e             解压压缩文件到当前目录
 11  f             刷新压缩文件中的文件
 12  i[参数]=<>  在压缩文件中查找字符串
 13  k             锁定压缩文件
 14  l[t,b]        列出压缩文件[技术信息,简洁]
 15  m[f]          移动到压缩文件[仅对文件]
 16  p             打印文件到标准输出设备
 17  r             修复压缩文件
 18  rc            重建丢失的卷
 19  rn            重命名压缩文件
 20  rr[N]         添加数据恢复记录
 21  rv[N]         创建恢复卷
 22  s[名字|-]     转换压缩文件为自解压格式或转换回压缩文件
 23  t             测试压缩文件
 24  u             更新压缩文件中的文件
 25  v[t,b]        详细列出压缩文件[技术信息,简洁]
 26  x             用绝对路径解压文件
 27
 28<开关>
 29  -             停止扫描
 30  ac            压缩或解压后清除存档属性
 31  ad            添加压缩文件名到目标路径
 32  ag[格式]      使用当前日期生成压缩文件名
 33  ao            添加具有压缩属性的文件
 34  ap<格式>      添加路径到压缩文件中
 35  as            同步压缩文件内容
 36  av            添加用户身份校验(仅注册版本可用)
 37  av-           禁用用户身份校验
 38  c-            禁用注释显示
 39  cfg-          禁用读取配置
 40  cl            名称转换为小写
 41  cu            名称转换为大写
 42  df            压缩后删除文件
 43  dh            打开共享文件
 44  ds            对固实压缩文件禁用名称排序
 45  e[+]<属性>    设置文件排除和包括属性
 46  ed            不添加空目录
 47  en            不添加"压缩文件结束"标志
 48  ep            从名称中排除路径
 49  ep1           从名称中排除基本目录
 50  ep2           展开为完整路径
 51  ep3           扩展路径为包含盘符的完全路径
 52  f             刷新文件
 53  hp[密码]      同时加密文件数据和文件头
 54  id[c,d,p,q]   禁用消息
 55  ieml[属性]    用 E-mail 发送压缩文件
 56  ierr          发送所有消息到标准错误设备
 57  ilog[名称]    把错误写到日志文件(只有注册版本可用)
 58  inul          禁用所有消息
 59  ioff          完成一个操作后关闭 PC 电源
 60  isnd          启用声音
 61  k             锁定压缩文件
 62  kb            保留损坏的已解压文件
 63  m<0..5>       设置压缩级别(0-存储3-默认5-最大)
 64  mc<参数>      设置高级压缩参数
 65  md<大小>      以KB为单位的字典大小(64,128,256,512,1024,2048,4096 or A-G)
 66  ms[ext;ext]   指定存储的文件类型
 67  n<文件>       仅包含指定的文件
 68  n@            从标准输入设备读取文件名到包括
 69  n@<列表>      在指定的文件列表包括文件
 70  o+            覆盖已存在文件
 71  o-            不覆盖已存在文件
 72  oc            设置 NTFS 压缩属性
 73  os            保存 NTFS 流
 74  ow            保存或恢复文件所有者和组
 75  p[密码]       设置密码
 76  p-            不询问密码
 77  r             递归子目录
 78  r0            仅递归通配符名称的子目录
 79  ri<P>[:<S>]   设置优先级(0-默认,1-最小..15-最大)和以毫秒为单位的休眠时间
 80  rr[N]         添加数据恢复记录
 81  rv[N]         创建恢复卷
 82  s[<N>,v[-],e] 创建固实压缩文件
 83  s-            禁用固实压缩文件
 84  sfx[名称]     创建自解压压缩文件
 85  st[名称]      从标准输入设备读取数据(stdin)
 86  t             压缩后测试文件
 87  ta<日期>      添加日期 <日期> 后修改的文件,日期格式 YYYYMMDDHHMMSS
 88  tb<日期>      添加日期 <日期> 前修改的文件,日期格式 YYYYMMDDHHMMSS
 89  tk            保留原始压缩文件时间
 90  tl            设置压缩文件时间为最新文件时间
 91  tn<时间>      添加 <时间> 以后的文件
 92  to<时间>      添加 <时间> 以前的文件
 93  ts<m,c,a>[N]  保存或恢复文件时间(修改,创建,访问)
 94  u             更新文件
 95  v             自动检测创建卷的大小或者列出所有的卷
 96  v<大小>[k,b]  创建卷大小=<大小>*1000 [*1024*1]
 97  vd            创建容量前清除磁盘内容
 98  ver[n]        文件版本控制
 99  vn            使用旧风格的卷命名方案
100  vp            每卷之前暂停
101  w<路径>       指定工作目录
102  x<文件>       排除指定的文件
103  x@            从标准输入设备读取要排除的文件名
104  x@<列表>      排除指定列表文件中的文件
105  y             假设对全部询问都回答是
106  z<文件>       从文件读取压缩文件注释
107
108 
109
110举个例子:
111
1121. 建立一个批处理文件,里头起作用的只有1行:)
113
114===================================================
115
116BackFav.bat(名字可以随便起)文件内容:
117
118REM 这个批处理文件是用来自动备份我的收藏夹
119REM WinRAR  <命令> -<开关1> -<开关N> <压缩文件> <文件> <@列表文件> <解压路径\>
120"D:\Program Files\WinRAR\WinRAR.exe" a -as --sfx -zsfxpara.txt -EP1 "d:\my documents\Favorites.exe" "%USERPROFILE%\Favorites"
121
122===================================================
123
124参数说明:
125
126a:                   添加指定的文件(源目录,这里是"%USERPROFILE%\Favorites")和文件夹到压缩文件(目标文件,这里是"d:\my documents\Favorites.exe")中。
127
128-as:                这是一个开关,指添加方式是“同步压缩文件内容”
129
130-r:                  表示“包含子文件夹”
131
132-sfx:               表示建立的是一个自解压文件
133
134-zsfxpara.txt:  从文件sfxpara.txt读取压缩文件注释,这注释有什么用后面解释
135
136-ep1:             表示不把路径%USERPROFILE%保存在压缩文件中
137
138 
139
1402. 注释文件的作用
141
142建立压缩文件的时候不光要考虑压缩那些文件,还要考虑怎么解压缩。通过注释文件可以向压缩包传递许多有用的信息。
143
144sfxpara.txt内容:
145
146PATH=%USERPROFILE%\
147Silent=1
148
149