【问题标题】:Excluding folders in Winrar在 Winrar 中排除文件夹
【发布时间】:2012-08-21 20:58:17
【问题描述】:

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

这给了我一个以 !tmp1 为根的 rar(唯一的顶级文件夹)。

排除开关是-x<filepathpattern>,可以包含多次。

所以,假设我们要排除 f2 及其所有子内容...

-x*\f2\*

删除内容,但保留 f2

-xf2

什么都不做 - 包括所有

-x\f2

什么都不做 - 包括所有

-x*\f2

什么都不做 - 包括所有(现在我很生气),所以肯定是..

-x\f2\

不,什么都不做 - 包括所有。所以它必须是......

-x*\f2\

地狱不,什么都不做 - 包括所有。我已经知道了

-x*\f2\*

删除内容,但保留 f2。我们继续...

-x*f2\

什么都不做 - 包括所有。呸呸呸。啊哈!怎么样...

-x!tmp1\f2\

不,什么都不做 - 包括所有。哇。好吧,所以它必须是......

-x!tmp1\f2

天哪,它奏效了!嗯,那怎么会……

-x*\f2

不工作? 这个小恶魔一开始就让我走上了这条疯狂的道路,而且应该奏效!

考虑到这一切,我敢尝试去*/a/* 目录,删除内容和目录吗?

-x*\a

不起作用,当然,什么也不做。

-x*\*\a

不起作用,当然,什么也不做。

-x!tmp1\*\a

不。但是……

-x*\a\*

删除两个目录的内容,但保留文件夹。所以,在绝望中我可以使用-ed 开关,它不会存储空文件夹,但这是一个广泛的黑客,我想消除指定的文件夹而不是所有的空文件夹。

随着我对 winrar 的敌意与日俱增,我正在传递信息的接力棒,着眼于那个辉煌的日子,那时我们将知道如何使用通配符而不是使用 -ed 开关来专门排除文件夹及其内容。

【问题讨论】:

  • 考虑如果您排除一个目录并在其中包含文件,它无论如何都会被创建的可能性。文档说您可以多次包含 -x 指令。你试过-x!tmp1\*\a\* -x!tmp1\*\a吗?
  • 不,我没有尝试基于-x!tmp1\f2 的尝试来修剪整个肢体,那么为什么-x!tmp1\*\a 不应该同样工作呢?不过我会试试的,谢谢你的意见。
  • @MarkRobbins,你能解决这个问题吗?你能试试我的解决方案吗?

标签: winrar


【解决方案1】:

(相当老的问题,但仍然可能相关)

也许您只需要这样:

-x*\f2 -x*\f2\*

两个排除开关,应该删除目录 f2 及其所有内容。

【讨论】:

    【解决方案2】:

    现在是一个更老的问题,但遇到了这个问题,所以我复制了你的文件夹结构,至少现在(Winrar 5.11,不是最新的,但很新),这是可行的:

    -x*\f2
    

    所以整个命令行是:

    "C:\Program Files\WinRAR\Rar.exe" a -m5 -s !tmp1.rar !tmp1 -x*\f2
    

    这是存储在 .rar 文件中的内容:

    !tmp1\f1\a\a.txt
    !tmp1\f1\f1.txt
    !tmp1\f1\a
    !tmp1\f1
    !tmp1
    

    同样,如果您使用-x*\a,则所有a 文件夹都将被排除,并存储此:

    !tmp1\f1\f1.txt
    !tmp1\f2\f2.txt
    !tmp1\f1
    !tmp1\f2
    !tmp1
    

    最后,结合两个参数 (-x*\f2 -x*\a),你会得到:

    !tmp1\f1\f1.txt
    !tmp1\f1
    !tmp1
    

    【讨论】:

      【解决方案3】:

      要管理要排除的大型文件列表,您可以创建文本文件并写入相对于源文件夹的所有排除文件/文件夹:

      1) 创建文件list.txt,写入排除文件/文件夹的名称 注意:* 参考源,所有文件/文件夹都是相对于源文件夹的

      *\f2 *\f3

      2) 运行命令

             rar a -r  -x@list.txt target.rar source-folder
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-06-28
        • 2015-06-11
        • 2013-08-03
        • 2017-10-12
        相关资源
        最近更新 更多