Mac OS 批量压缩单独文件夹

最近在用imac,发现macos不能像pc一样批量单独压缩到各个文件夹,全选文件之后,只能合并压缩,不能挨个压缩到对应文件名字的文件压缩包里

在中文网络里面没有找到对应的教程,然后找了下英文世界,发现了以下这个网址

https://apple.stackexchange.com/questions/225241/batch-compress-multiple-folders-into-individual-zip-files

按照第二个答案,成功了利用mac的自动操作功能,创建了一个批量压缩到单独文件夹的功能

1、打开mac的自动操作公司

2、然后菜单栏上新建,选择【服务】或是【快速操作】(我是新操作系统,是后面这个.),然后在左边选择【shell脚本】(可以在左边搜索),然后把【运行shel脚本】拖到右边

3、然后界面配置如下

4、在shell脚本,下面有一个大空格,填入以下代码

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

然后就是保存起来,保存的名字会变成,你右键文件夹的名字…

比如我取了一个英文名 Compress Folders Separately (和原回答一样)

5、然后你在文件夹中,任意选多个文件夹,右键就会有如我图示的右键菜单,点击就可以批量打包了…

 

注意

1、如果你选择的是文件夹,那么压缩包里面的文件夹名字就是你当前的名字
但如果你选的是文件,那么压缩包里面的文件夹名字,会是你的文件所在的文件夹的名字 (这个的话,你压缩一个文件和文件夹,然后重新解压看看,就明白我说的了)

2、代码里面.zip,你可以改成.rar,那么压缩出来的就是.rar的文件,我需要rar,所以就自己该了rar,其实就是把后缀该了,但是依然可以用..哈

 

总结,发现macos的这个自动操作,真的太牛逼了,太好用了,后续有时间多研究研究,可以大大改善自己的工作效率..

发表评论

电子邮件地址不会被公开。 必填项已用*标注