在MacOS雙擊執行Shell,並壓縮指定目錄

更改副檔名、增加執行權限

shell 副檔名與Linux一致是.sh
但要能雙擊執行,須將副檔名改成.command
並cd到該批次檔目錄執加執行權限

1
chmod a+x 批次檔名.command

切換至當前目錄

MacOS的批次有個不同之處

執行shell script 的工作目錄,一定會是使用者的 home 目錄,而不是 scritp 所在的目錄

若script都是用絕對路徑就不影響,但會是以相對路徑為主的話
則在批次最前面增加語法,切換到所在目錄

以下兩個語法擇一即可

1
cd -- "$(dirname "$BASH_SOURCE")"
1
cd -- "$(dirname "$0")"

zip壓縮、解壓縮 目錄

壓縮zip檔
-r 目錄下所有檔案
-X 去除MacOS的原生隱藏檔案如_MACOSX._Filename.ds store

1
zip -r -X ~\Desktop\壓縮檔名稱.zip {欲壓縮的目錄}

解壓縮zip檔

1
unzip 壓縮檔.zip

參考資料

stack overflow / How to run a shell script in OS X by double-clicking?

NOTHING BUT.. / 如何在 Mac 雙擊執行Shell Script

wpbeaches / How to compress and uncompress files and folders in the Terminal in macOS Big Sur