【发布时间】:2020-05-29 14:07:54
【问题描述】:
所以我希望压缩给定目录中的文件,例如 /etc/input 并输出 /etc/output 中的文件,它应该是这样的:
$ ls /etc/input
file1
file2
file3
$ script.sh
$ ls /etc/output
file1.zip
file2.zip
file3.zip
$ ls /etc/input
现在,我写的是这样的:
find . -type f -print | while read fname ; do
mkdir -p "../output/`dirname \"$fname\"`"
gzip -c "$fname" > "../output/$fname.gz"
done
【问题讨论】:
-
使用
-print0 | while IFS=$'\0' read -r -d $'\0'作为带空格的文件名
标签: bash scripting compression gzip