我在许多文件夹下有很多大的csv文件,文件和文件夹的名称中都有空格。
我现在有了下面的代码,但是当文件/文件夹的名称中有空格时,它不起作用:
csv=$(find . -name "*.csv")
for f in $csv; do
echo "Compressing $f"
(cd $(dirname $f) && zip -j $(basename $f.zip) $(basename $f))
done
答案 0 :(得分:1)
让find
执行zip本身,因为它仍然知道所有空格:
find -name '*.csv' -exec zip -j {}.zip {} \;
您撰写的内容的直接端口将使用-execdir
代替-exec
,但似乎没有必要。