______________ myFolder
我可以用 _____________ 替换什么来以递归方式 gzip 从 myFolder 开始压缩每个文件,并让 gzip 覆盖该文件(将 gzip 文件重命名为原始文件名)?
答案1
你也可以尝试
find myFolder -type f -exec gzip {} \; -exec mv {}.gz {} \;
答案2
尝试:
find myFolder -type f -exec gzip {} +
答案3
一个简单但不太优雅的 bash 脚本就是简单地 cd in,循环中对它们全部进行 gzip 压缩,然后将它们 mv 回来(默认情况下,gzip 会删除未压缩的文件):
#!/bin/bash
cd myFolder
for f in `find ./ -type f`
do
gzip $f
mv $f.gz $f
done
将其放入名为“gzip_and_rename.sh”的文件中,例如 chmod -775 并像 ./gzip_and_rename.sh 一样运行它(如果从 myFolder 内部运行,请从脚本中删除“cd myFolder”行)。