使用WinRAR' s rar.exe压缩文件夹的批处理。该文件包含2个不需要的空父文件夹

时间:2014-07-21 18:01:51

标签: batch-file cmd compression rar winrar

我正在尝试rar一个文件夹。由于某种原因,生成的.rar文件包含2个父文件夹,这两个文件夹都是空的,这些文件夹指向我想要压缩的文件夹。

这是我需要压缩的文件夹:\ PC2 \ deploy \ Dev \ Client \%ver%\

这是我正在使用的行

set path="C:\Program Files\WinRAR\";%path%
rar a -r -v2m -m5 "\\PC2\deploy\Dev\Client\%ver% RARs\%ver%" "\\PC2\deploy\Dev\Client\%ver%\"

这就是文件夹在.rar中的位置。 \开发\客户\%版本%

rar包含2个空的父文件夹(在我的系统上不是空的btw)而不是仅包含我要压缩的文件夹,而该文件位于\ PC2 \ deploy \ Scripts \ QA \上,如果有帮助,但是提供rar.exe的完整路径应该意味着我没有任何问题..

任何帮助?

编辑:-ep没有帮助,因为我有一个我需要的子文件夹,并使用它只删除.rar上的所有文件

2 个答案:

答案 0 :(得分:0)

您应该将要压缩的文件复制到新文件夹中,然后创建一个zip。由于您已经在使用批处理文件,因此只需在zip命令之前再添加2个复制命令。您可以选择在最后添加删除。

    mkdir
    copy
    copy
    zip
    rmdir

答案 1 :(得分:0)

还有一个问题:如何从存档文件和文件夹中删除基本文件夹?

此外,该解决方案可以在 WinRAR 的程序文件文件夹中的文本文件 Rar.txt 中找到,或者在 WinRAR 的帮助下找到标题为

的页面
  • 按字母顺序切换列表
  • 切换-EP1 - 从名称中排除基本文件夹

要使用的命令是

"%ProgramFiles%\WinRAR\Rar.exe" a -ep1 -r -v2m -m5 "\\PC2\deploy\Dev\Client\%ver% RARs\%ver%" "\\PC2\deploy\Dev\Client\%ver%"

压缩%ver% 引用的文件夹,包括档案中此文件夹的名称。

"%ProgramFiles%\WinRAR\Rar.exe" a -ep1 -r -v2m -m5 "\\PC2\deploy\Dev\Client\%ver% RARs\%ver%" "\\PC2\deploy\Dev\Client\%ver%\"

压缩%ver% 引用的文件夹,不含,包括存档中此文件夹的名称。与第一个命令的区别在于要压缩的文件夹路径末尾的反斜杠。

开关-ep1只会导致从文件中删除以存档路径,直到在命令行上的文件夹路径上找到的最后一个反斜杠。因此被-ep1移除

  • 代表第一个命令:\\PC2\deploy\Dev\Client\
  • for 2nd command:\\PC2\deploy\Dev\Client\%ver%\