AppleScript 檔案轉換:透過捷徑建立流程
更新日期:
簡短結論
AppleScript 檔案轉換流程可透過 Apple「捷徑」使用 Yuzu Drag。Yuzu 提供 Process Files 與 Run Preset 動作,但目前 App 沒有直接轉檔的 AppleScript 字典。不要自行編造 tell application 轉檔指令,也不要模擬輪盤按鍵。請設定真正的捷徑,明確傳入檔案,並使用 macOS 的 shortcuts 命令列工具執行。
檔案處理步驟與目的地由捷徑管理。AppleScript 可以選取輸入並啟動捷徑,這比一連串模擬點按更容易檢視自動化內容。
從 macOS 內建自動化開始
簡單的圖片轉檔或尺寸調整,先試捷徑內建圖片動作。建立有明確輸入的捷徑,加入原生操作,再加入儲存動作。引入 AppleScript 前先手動執行並檢查結果。
AppleScript 適合已存在於更大流程中,或希望呼叫現有捷徑前顯示檔案選擇器的情況。處理多張圖片不代表一定需要它。Finder 快速動作可能以更少腳本提供同樣便利的入口。
單次轉檔也可能只需在預覽程式開啟圖片並輸出。依工作執行頻率選擇流程,不要讓腳本變成簡單輸出的先決條件。
Yuzu 實際提供的介面
Yuzu 的 Process Files 提供 Convert to JPEG、Convert to PNG、Convert to WebP 與 Resize image。它接收檔案,將輸出回傳給下一個捷徑動作。Run Preset 接收相容的已儲存本機轉換或圖片鏈,也以檔案方式回傳結果。
這些是捷徑可用的 App Intents,不是直接 AppleScript 物件模型。腳本不能假設輪盤標籤就是腳本動詞,也不能假設預設集顯示名稱是 Yuzu 本身理解的命令參數。
Run Preset 不支援需要互動、分享、變更原檔或剪貼簿存取的設定。若預設集執行時需要選項面板或目的地選擇器,就不適合這種無介面方式。參數與 Finder 設定請見捷徑參考。
先建立捷徑,再寫腳本
建立並儲存名為 Prepare image 的捷徑。這是你自行建立的範例名稱,不是 Yuzu 預先安裝的捷徑。
- 在捷徑設定檔案輸入路徑,將「捷徑輸入」用於處理動作的 Files 參數。
- 加入 Yuzu Drag 的 Process Files 動作。
- 初次測試選取 Convert to PNG。
- 加入接收回傳檔案的儲存動作。
- 在儲存動作設定明確的測試目的地與覆寫行為。
- 用合適的本機圖片手動執行捷徑,檢查已儲存結果。
若有相容的已儲存配方,之後可將處理動作換成 Run Preset。初版保持簡單,以便辨識問題來自輸入、處理還是儲存。
從 AppleScript 呼叫已設定捷徑
Prepare image 建立完成且可手動執行後,以下腳本會選擇一個檔案,並將路徑傳給捷徑:
set sourceFile to choose file with prompt "選擇要處理的圖片"
set shortcutName to "Prepare image"
set sourcePath to POSIX path of sourceFile
set runCommand to "/usr/bin/shortcuts run " & quoted form of shortcutName & " --input-path " & quoted form of sourcePath
do shell script runCommand
引號處理很重要。Finder 路徑或捷徑名稱可能包含空格,單純串接 Shell 參數可能改變其意義。quoted form of 會將名稱與路徑當作個別 Shell 參數,而不是將字元解讀為 Shell 語法。
這個腳本刻意不猜測目的地,也不解析回傳路徑。輸出位置由捷徑的儲存動作決定,請直接檢查該檔案。若更改捷徑名稱,請同步修改 shortcutName,確保完全相符。
存取權與排錯
腳本、捷徑與處理 App 都可能遇到 macOS 存取提示。請批准原本打算使用的檔案與目的地。腳本若從不同宿主 App 執行,授權情境可能與手動執行捷徑不同。
若指令找不到捷徑,檢查已儲存名稱及它是否在捷徑中可用。若檔案未傳入 Yuzu,檢查 Files 連接。若處理完成但目的資料夾沒有檔案,檢查儲存動作。不要用介面點按延遲取代這些檢查。
以這種方式啟動時,捷徑不會自動繼承目前 Finder 選取內容。本例明確提供一個選定檔案。批次流程必須透過適當輸入設定提供預期批次;不要假設開啟 Finder 並選取檔案就會改變指令輸入。
手動流程保持獨立
手動使用時拖移圖片,輕按 ⇧ 開啟 Convert 或 ⌘ 開啟 Tools,再放到扇形選項。再按一次 ⌘ 開啟 Actions。這些手勢適合直接操作,但不是腳本介面,自動化流程不必重現。
圖片工具總覽介紹支援的處理工作,預設集參考說明可重複使用的設定。檢查已儲存輸出,並確認周邊自動化使用預期結果前,請保留原檔。
相關連結
常見問題
可以直接指示 Yuzu Drag 轉換檔案嗎?
目前 App 原始碼沒有隨附直接轉檔的 AppleScript 字典。請使用捷徑動作,再呼叫已設定的捷徑。
AppleScript 必須模擬拖移嗎?
不必。用 Process Files 或相容的 Run Preset 建立捷徑,明確傳入檔案,再從腳本呼叫該捷徑。







