下面是一个Automator的服务,在变得可用搜索时的文件夹被选择和模拟的上下文菜单 压缩[n]的物品 的命令 ,除了它创建了一个单独的zip档案文件为每个选定的文件夹中的名称选定的文件夹。如果Folder Name.zip文件已存在,则将" 2"
(空格 2)附加到文件名,例如Folder Name 2.zip。这确保了现有的zip存档文件未触及,zip存档文件名将根据需要自动递增。
创建服务:
打开Automator并选择服务或文件 > 新建 > 服务如果Automator已打开。
设置服务接收选择到的文件夹,并在以查找。
添加一个Run Shell Script Action,将Shell:设置为/ bin / bash并将输入:作为参数传递给它们并添加以下代码:
for f in "$@"; do
dn="$(dirname "$f")"
bn="$(basename "$f")"
pushd "$dn"
if [[ ! -e "$bn.zip" ]]; then
ditto -c -k --sequesterRsrc --keepParent "$f" "$bn.zip"
else
n=2
for i in $bn *.zip; do
if [[ "$bn $n.zip" == "$i" ]]; then
n="$(( $n + 1 ))"
fi
done
ditto -c -k --sequesterRsrc --keepParent "$f" "$bn $n.zip"
fi
done
afplay /System/Library/Sounds/Purr.aiff
将服务保存为:单独压缩文件夹
使用服务:
在Finder或桌面上选择多个文件夹,然后右键单击并从“ 服务”下选择“ 单独压缩文件夹”。
或者在选择目标文件夹后,您还可以从菜单栏中单击Finder > 服务 > 单独压缩文件夹。
在那里,你有一种方法可以在模拟Finder创建zip存档文件的方式的同时,在单个zip存档中单独和同时压缩多个文件夹。这意味着zip存档在子目录__MACOSX中包含保留的资源分支和HFS元数据,并且仅在目标存档中嵌入父目录名源,而不是在使用(不)创建存档时使用完全限定的路径名。zip
-j
单独压缩文件夹的图像(服务)