因此,我发现在 shell 中定义一个函数很有用,如下所示:
zip() { ditto -c -k --sequesterRsrc --keepParent "$1" "$1.zip" }
我将如何扩展它以获取任意数量的参数,然后,如果有多个参数,它会将它们全部存档到 Archive.zip 中,如果该文件名已被获取,它会将其保存为 Archive-1.zip, Archive -2.zip,还是 Archive-n.zip?
答案1
只是关于如何解决您的问题的想法。我还没有测试过这个
zippo() {
local n=1
local f
for f; do
if [[ -e $f.zip ]]; then
echo ditto -c -k --sequesterRsrc --keepParent "$f" "${f}-${n}.zip"
((n++))
else
echo ditto -c -k --sequesterRsrc --keepParent "$f" "$f.zip"
fi
done
}
就像我说的未经测试,但回声的存在只是为了确保您获得正确的输出。我没有ditto
,所以我无法真正测试它。