中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 自己用 rar.exe 的一些体会和例子
作者:
标题: 自己用 rar.exe 的一些体会和例子 上一主题 | 下一主题
qinchun36
高级用户

据说是李先生


积分 609
发帖 400
注册 2008-4-23
状态 离线
『楼 主』:  自己用 rar.exe 的一些体会和例子

a       添加文件到压缩文件中。
--------------------------------
        直接列出所有要添加的文件或文件夹
                可以使用通配符
                带完整路径的文件或文件夹添加进去后的路径为除去原磁盘盘符以外的部分,如 "D:\txt\novel01.txt" 添加为 "txt\novel01.txt"
                如果文件夹路径后面不带斜杠则添加整个文件夹,带斜杠则只添加此文件夹(不包括它的子文件夹)路径下的文件(不包括文件夹)

        rar a "new.rar" "rar.exe" "*.txt" "C:\Program Files\Common Files"
----------------
        按照一个保存文件路径的文本文档中列出的信息添:

        rar a "new.rar" @"list.txt"

================================================================



d        从压缩文件中删除文件。用法类似 a 命令。
                如果这个命令导致压缩文件中所有文件全部删除,这个空的压缩文件将被删除。
--------------------------------
        直接列出所有要删除的文件或文件夹
                可以使用通配符
                与 a 命令不同的是,不论文件夹路径后面带不带斜杠都讲删除整个文件夹

        rar d "new.rar" "rar.exe" "*.txt" "Program Files\Common Files"
----------------
        按照一个保存文件路径的文本文档中列出的信息添:

        rar d "new.rar" @"list.txt"

================================================================



c       添加压缩文件注释。
                文件的注释长度限制到 32767 字节。
--------------------------------
        直接从键盘输入注释
                回车表示已经输入完毕

        rar c "new.rar"
----------------
        从已有的文本文件中载入注释

        rar c "new.rar" -z"info.txt"

================================================================



cf        为压缩包内文件添加注释信息。
                注意 c 命令是为压缩包添加注释,此命令是为其内部包含的文件添加注释;
                此注释在UI界面不会显示,可以通过 v 命令查看。
--------------------------------
        为压缩包内所有文件添加或更新注释

        rar cf "new.rar"
----------------
        指定要添加注释的文件(可以使用通配符)

        rar cf "new.rar" "*.txt" "file02.exe"

================================================================



v        查看压缩包及其内部文件的信息。
                可以查看到由 c 命令所创建的注释。
--------------------------------
        查看所有文件的信息

        rar v "new.rar"
----------------
        指定要查看信息的文件(可以使用通配符)

        rar v "new.rar" "*.txt" "file02.exe"

::::::::::::::::::::::::::::::::

l[t,b]        压缩文件的内容列表[技术信息]。
                和 'v' 命令一样列出文件,但不包括文件路径,也就是只显示文件名。
                当使用't'变量时可选技术信息(主操作系统,固实标志和老版本标记)被显示。
                变量 'b' 强制 RAR 只输出单纯的文件名,而没有其他任何的附加信息。

        rar lb masses.rar
        rar lt mySFX.exe



================================================================



i[i|c|h|t]=<字符串>        在压缩文件中查找字符串。
                                这里指的是压缩包中文件的内容中寻找。

        支持下列可选参数:
                i - 不区分大小写(默认);
                c - 区分大小写搜索;
                h - 十六进制搜索;
                t - 使用 ANSI, Unicode 和 OEM 字符表 (只有 Win32 可用);       
        如果没有指定任何参数,它可以使用简化的命令行语法 i<字符串> 来代替 i=<字符串>
        它允许指定带有另外一个参数的 't' 变量,例如,ict=字符串 在上面提及的所有表中执行区分大小写的搜索。
                一般带上开关 -r ,表示也包括子目录下的内容。
--------------------------------
        在 c:\*.rar 压缩文件中的 *.txt 文件执行区分大小写的 "first level" 字符串的搜索

        rar "ic=first level" -r c:\*.rar *.txt
----------------
        在 e:\text 目录下的 rar 压缩文件中搜索十六进制字符串 f0 e0 ae ae ab 2d 83 e3 a9

        rar ih=f0e0aeaeab2d83e3a9 -r e:\text

================================================================



k        锁定压缩文件。任何试图改变压缩文件的命令都会被忽略。
                对于自解压程序同样有效。
--------------------------------
            rar k *.rar mySFX.exe

================================================================



rn        重命名压缩文件。
                RAR 不检查目标文件名是否已经在压缩文件中存在,所以你需要小心,防止重名。尤其是使用通配符时特别重要。这个命令有潜在的危险,因为一个错误的通配符可以损坏所有的压缩文件名。
        语法:
        rar rn <压缩文件名> <源文件名1> <目标文件名1> ... <源文件名N> <目标文件名N>
--------------------------------
        在压缩文件 data.rar 中将把 readme.txt 重命名为 readme.bak 并把 info.txt 重命名为 info.bak

        rar rn data.rar readme.txt readme.bak info.txt info.bak
----------------
        在源文件和目标文件名中可以使用通配符来进行简单像改变文件扩展名的名称转换,例如将把所有的 *.txt 文件重命名为 *.bak

        rar rn data.rar *.txt *.bak


================================================================

其他一些参数我认为不是太使用就没写出来了,有兴趣的自己去差资料看。




应用实例
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

1.        用 x 命令和 -ad 开关将 D:\RarFiles 目录中所有的RAR压缩文件分别解压到 E:\MyFiles\new 下(若此路径不存在则会自动创建)

                rar x -ad "D:\RarFiles\*.rar" "E:\MyFiles\new\"


2.        将 D:\Work 目录及其子目录中所有隐藏(h)的经典毛毛全部压缩到 E:\Study 取名为 JAVA ,可能一个文件太大了,就分成30兆一卷吧,为了保护内容,我给压缩文件内容和文件头都加上密码 ohYes ,这样就保密啦
                这里用 -e-s 开关排除系统属性的文件,当然如果你要的已经设为系统属性就去掉此项

                rar a -r -e+h -e-s -p"ohYes" -hp -v30m "E:\Study\JAVA" "D:\Work\*.rmvb" "D:\Work\*.mpeg" "D:\Work\*.mpg"

3.        把工作空间 D:\Projects 的琐碎资料压缩成固实包并锁定作为备份,但不要备份它下面临时文件夹 Temp 和临时备份文件夹 Backup 下面的内容以及所有的 .bak 和 D:\exclude.txt 中列出的文件,完成后关机(关机功能仅WIN32系统)

                rar a -r -s -ed -k -ioff -x"D:\Projects\Temp\*" -x"D:\Projects\Backup\*" -x"D:\Projects\*.bak" -x@"D:\exclude.txt" "D:\Project.rar" "D:\Projects"

4.        建立了一个非常大的零碎文件的压缩包 D:\masses.rar ,里面光是文本文件就有几千个,名字也是乱搞的,某天忽然想找一首湿,只记得有一句是“纯爷们 铁血真汉子”,但是不知道是在这个压缩包中的哪个文件中了,要解压出来找也很麻烦啊
        使用 i 命令可以在这个包中找特定字符串,包括十六进制的

                rar i="纯爷们 铁血真汉子" -r "D:\masses.rar"

        从命令行窗口信息看到

                发现  D:\masses.rar / masses\super\史记.txt
                  春哥纯爷们 铁血真汉子

        于是知道是在 masses\super\史记.txt 里面。

[ Last edited by qinchun36 on 2009-6-27 at 07:53 ]

   此帖被 +8 点积分     点击查看详情   
评分人:【 lxmxn 分数: +8  时间:2009-6-28 00:27


2009-6-27 07:50
查看资料  发送邮件  发短消息 网志  OICQ (182484135)  编辑帖子  回复  引用回复
lxmxn
版主




积分 11386
发帖 4938
注册 2006-7-23
状态 离线
『第 2 楼』:  

谢谢分享,加分支持一下。

2009-6-28 00:27
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
applecy
初级用户




积分 168
发帖 78
注册 2006-12-27
状态 离线
『第 3 楼』:  

嗯....感觉应该研究一下..



               我抬头仰望,原来天还是跟原来一样高.
I look up to the rise, the original days or as high as the original.
2009-6-29 17:56
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: