使用Winrar的一天
我想要做的就是使用通配符排除文件夹及其内容,即使在阅读完文档后,它也变成了猜谜游戏......
所以我的试验床看起来像:
C:\!tmp1\f1
C:\!tmp1\f1\f1.txt
C:\!tmp1\f1\a
C:\!tmp1\f1\a\a.txt
C:\!tmp1\f2
C:\!tmp1\f2\f2.txt
C:\!tmp1\f2\a
C:\!tmp1\f2\a\a.txt
我正在执行:
C:\>"c:\program files\winrar\winrar.exe" a -r !tmp1.rar !tmp1
这给了我一个rar,其中!tmp1作为根(唯一的顶级文件夹)。
排除开关为-x<filepathpattern>
,可能会多次包含。
所以,鉴于我们想要排除f2及其所有子内容......
-x*\f2\*
删除内容,但留下f2
-xf2
什么都不做 - 包括所有
-x\f2
什么都不做 - 包括所有
-x*\f2
什么也不做 - 包括所有(现在我很生气),所以肯定一定是......
-x\f2\
nope,什么也不做 - 包括所有。所以它有GOT ......
-x*\f2\
地狱不,什么都不做 - 包括所有。我已经知道了
-x*\f2\*
删除内容,但留下f2。我们继续......
-x*f2\
什么都不做 - 包括所有。 GRRRR。啊哈!怎么样......
-x!tmp1\f2\
nope,什么也不做 - 包括所有。 WTF。好吧,所以它有GOT ......
-x!tmp1\f2
天啊,它有效!嗯,那怎么来......
-x*\f2
不起作用? 这是一个小恶魔,让我沿着这条疯狂的道路开始,应该有所作为!
鉴于这一切,我是否敢于尝试追踪*/a/*
目录,删除内容和目录?
-x*\a
不起作用,当然,什么都不做。
-x*\*\a
不起作用,当然,什么都不做。
-x!tmp1\*\a
没了。但...
-x*\a\*
删除两个目录的内容,但保留文件夹。所以,在绝望中我可以使用-ed
开关,它不会存储空文件夹,但这是一个广泛的黑客,我想消除指定的文件夹而不是所有空文件夹。
随着我对winrar的敌意越来越大,我正在向前传递信息的指挥棒,我们将知道如何使用通配符专门排除文件夹及其内容而不使用-ed
开关
答案 0 :(得分:12)
(相当古老的问题,但仍然可能相关)
也许您只需要这样:
-x*\f2 -x*\f2\*
两个排除开关,应删除目录f2及其所有内容。
答案 1 :(得分:0)
要管理要排除的大量文件,可以创建文本文件并写入相对于源文件夹的所有排除的文件/文件夹:
1)创建文件list.txt,写出排除文件/文件夹的名称 注意:*是指来源,所有文件/文件夹都相对于来源文件夹
* \ f2 * \ f3
2)运行命令
rar a -r -x@list.txt target.rar source-folder