我有一个目录,里面有很多子目录,我想找到一种方法,使用终端将所有这些子目录转换为它们自己的 .rar 文件,因为这些子目录太多了,无法单独处理。我需要每个子目录都是自己的 .rar 文件,而不是将主目录压缩成一个大的 .rar 文件,因为子目录在压缩后必须放到不同的地方。谢谢。
答案1
如果您确实需要 .rar 扩展名,那么您需要安装 rar。
sudo apt install rar
以下命令将压缩当前工作目录中的所有目录(使用命令pwd
了解当前目录):
for dir in */
do
base=$(basename "$dir")
rar a "${base}" "$dir"
done
对于普通的 tar 球,您可以使用:
cd directory
for dir in */
do
base=$(basename "$dir")
tar -czf "${base}.tar.gz" "$dir"
done