我正在尝试使用以下文本将目录内的所有子目录打包成各自单独的 .rar 文件:
for dir in */
do
base=$(basename "$dir")
rar a "${base}" "$dir"
done
我遇到的唯一问题是,当它尝试对其中没有文件但里面有文件夹的子目录进行 rar 压缩时,它会给出错误 。例如, 。包含文件夹的子目录不会WARNING: No Files
被压缩,但会给出无文件错误。我可以对正在运行的命令做些什么来解决这个问题?/main directory/subdirectory
/rared/folder/actual files/
答案1
使用 -r 标志将添加子目录:
for dir in */; do rar a -r "${dir%/}.rar" "$dir"; done