You are currently viewing macOS 批量壓縮資料夾

macOS 批量壓縮資料夾

前言

突然有一天,我在上傳資源到 CxDrive 的時候,需要將每個子文件夾打包成zip,一個一個手動操作真的是太累了,所以,這種事情為什麼不寫個腳本呢?

教程

  1. 首先呢,我們透過 Spotlight 搜索 Automator 並且打開。
CleanShot 2022-02-07 at 11.15.38@2x
  1. 新增一個 快速動作
CleanShot 2022-02-07 at 11.02.35@2x
  1. 搜尋 執行Shell
CleanShot 2022-02-07 at 11.02.48@2x
  1. 選擇對應的配置,工作流程目的: 檔案或檔案夾 、位置:Finder
CleanShot 2022-02-07 at 11.02.25@2x
  1. 執行Shell工序指令 拖到 右側 並且輸入一下指令👇🏻
for f in "[email protected]"; do

    dn="$(dirname "$f")"
    bn="$(basename "$f")"

    cd "$dn" || exit

    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

效果

結語

生活中零碎瑣事還是交給電腦來做就好,我們只需要負責創新。

參考資料

發佈留言

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料