Rar.exe CLI - 从没有目录结构的目录中添加文件?

Rar.exe CLI - 从没有目录结构的目录中添加文件?

我需要抓取文件夹中的所有文件,然后将其放入压缩文件档案。

这是我目前的方法:

"C:\Program Files\WinRAR\Rar.exe" a -r -md2m -s -m5 -ma4 -t ..\Releases\vCommands.rar bin\

... 在哪里垃圾桶是我的文件夹。我试过了也是如此,即使它是针对另一个程序,结果也是相同的。

为了清楚起见,这里有一张图片:
不同之处

左上角,在.rar文件,有垃圾桶包含所有文件的目录。
在右下角,.7z文件,所有这些文件都位于档案根目录中。

我需要把所有这些文件都塞进.rar存档根目录,而不是文件夹,而不必在其中执行批处理文件垃圾桶文件夹。

答案1

在阅读了手册第三遍之后,我找到了-ep开关。

-ep     Exclude paths from names. This switch enables files to be added
        to an archive without including the path information. This
        could, of course, result in multiple files existing in the
        archive with the same name.

我首先误解了这一点,因为据我所知,路径是指目录文件名,认为它会将文件名称完全删除。
(这种信念源于我对其他存档格式的经验)

然而,小路,作者的意思是目录
需要注意的是,它将删除所有目录信息(甚至子目录),从而使文件结构扁平化。

答案2

将 rar.exe 添加到 Windows 中的 Path 变量中,以方便使用。

输入要存档的目录。本例中为 TestDirectory
\TestDirectory>rar a -m1 -vn -r ..\somber.rar

rar a -m1 -vn -r somber.rar

答案3

我不相信这可以通过命令行开关来完成。

您需要做的是运行目录命令并将结果输出到文本文件。然后通过 winrar 从文本文件中提取这些结果并将它们分别添加到存档中。

使用它将文件列表输出到文件 dir /s /b >> filelist.txt

将它们压缩。 "C:\Program Files\WinRAR\Rar.exe" a -r -md2m -s -m5 -ma4 -t ..\Releases\vCommands.rar @filelist.txt

我还没有测试过,但我相信这是正确的方法。

相关内容