为目录中的每个子目录创建一个RAR存档 - Centos / Ubuntu

时间:2014-08-14 03:30:49

标签: linux shell ubuntu rar

如果在Ubuntu或Centos上使用RAR,这是压缩单个文件夹(包含子文件夹)的命令,或者是压缩单个存档中目录中所有文件夹的命令:

rar a -m0 -r name.rar

,其中

-m0 是压缩等级
-r 递归模式

但是如果我要压缩每个文件夹?使用哪些命令?

我希望在压缩每个文件夹时保留目录树。

我也尝试了这个命令,但它没有给我任何动作,但在终端中显示如此:

terminal http://imageshack.com/a/img661/6514/nzFaVA.png

for folder in */; do echo rar a -m0 -r "${folder%/}.rar" "$folder"; done

参数替换${folder%/}用于去除文件夹名称末尾的“/”。但是这段代码不起作用。

来源:http://www.linuxquestions.org/questions/linux-newbie-8/compress-folder-in-rar-652612/

P.S:我使用Centos或Ubuntu而非Windows。

1 个答案:

答案 0 :(得分:2)

您可能只需要删除echo

for folder in */; do rar a -m0 -r "${folder%/}.rar" "$folder"; done