建立一個 Finder 快速動作,接收檔案、逐一處理選取項目,並在你選擇的 App 中開啟每個項目。本指南使用可丟棄的文字檔和「文字編輯」,並檢查是否缺少輸入、檔名重複,以及變數連接錯誤。

準備可由所選 App 開啟的檔案

具體做法是在 Finder 中選取多個現有的本機檔案,並將每個檔案都交給同一個 App。先準備兩個合成的純文字文件:Blue note.txt,內容為 Blue sample;以及 Green note.txt,內容為 Green sample。將它們儲存在桌面上一個新建、名為 Finder Opening Test 的資料夾中。如果該資料夾已存在,請改用其他名稱,並相應調整後續範例。

建立捷徑前,先手動開啟每個範例:在 Finder 中按住 Control 鍵並按一下檔案,選擇「打開檔案的應用程式」,然後選取「文字編輯」。這可確認目標 App 能處理這些輸入。Apple 說明了以特定 App 開啟檔案的方法,也介紹了將檔案拖到 App 圖像上的方式。在 Mac 上選擇用來開啟檔案的 App。

若要套用到其他工作流程,請改用已安裝且支援相應格式的 App 和可丟棄的檔案。選取某個 App 並不代表它能讀取所有選取的格式。初次測試請使用一般的本機文件;資料夾和文件套件需要不同的處理方式。

建立 Finder 快速動作

設定檔案輸入和空選取項目的回應

在「捷徑」中建立捷徑,並命名為 Open Selected Text in TextEdit。Apple 的建立指南說明如何從動作資料庫加入動作並設定其參數。在 Mac 上建立自訂捷徑。

開啟捷徑的「詳細資訊」,啟用「用作快速動作」,並選取「Finder」作為可用位置。Apple 說明了 Finder 整合,並指出選取 Finder 後,可能需要將檔案或資料夾加入捷徑允許的輸入項目。在 Mac 上工作時執行捷徑。

在工作流程頂端,按一下接受的輸入類型。清除範圍較廣的選取項目,並啟用「檔案」。Apple 將此類型定義為涵蓋文件、影像、PDF 和其他檔案;資料夾則有獨立的輸入類型。此工作流程刻意只接受檔案。瞭解 Mac 上「捷徑」的輸入類型。

將沒有輸入時的行為設為「停止並回應」,並輸入訊息 Select sample files in Finder, then run this Quick Action.。如此一來,空白執行時也能清楚提示使用者。Apple 說明,部分啟動位置(包括 Dock)不會提供初始輸入,並提供了這個回應選項。限制從 Mac 上其他 App 執行捷徑時的輸入。

將每個選取的檔案連接到開啟動作

加入「對每個項目重複」,並將其列表設為「捷徑輸入」。在迴圈內加入「打開檔案」。將其檔案參數設為「重複項目」,然後在 App 參數中選取「文字編輯」,不要保留「預設 App」選項。以下是工作流程圖,不是可執行程式碼:

從 Finder 接收檔案
如果沒有輸入:停止並回應

對「捷徑輸入」中的每個項目重複
    在「文字編輯」中打開「重複項目」
結束重複

關鍵連接是「重複項目」。Apple 說明,「對每個項目重複」會接受一個列表,並針對每個項目執行一次其中的動作;每次迭代時,「重複項目」都會包含目前的項目。在迴圈內將整個「捷徑輸入」列表傳給開啟動作,就無法達成每次迭代處理一個檔案的設計。在 Mac 上使用「捷徑」中的重複動作。

執行前,請在 Mac 上查看開啟動作的資訊:按住 Control 鍵並按一下動作圖像,然後選擇「顯示資訊」。Apple 說明,這是查看動作描述、接受的輸入和產生輸出的方式。確認你選的是開啟檔案的動作,且其設定中有提供所選 App。在 Mac 上瀏覽「捷徑」中的動作列表。

編輯工作流程時,請保留以下各階段的界線:

階段 此處使用的值 應保留的設定
Finder 輸入 選取的檔案項目 保留檔案項目。
「對每個項目重複」輸入 「捷徑輸入」列表 處理提供的列表。
「重複項目」 一個選取的檔案 將此變數連接到「打開檔案」。
開啟後 此工作流程中沒有後續動作 不要假設結果包含已編輯的文件內容。

Apple 說明,重複迴圈會將其中動作的輸出收集到整體結果中。因此,迴圈的結果取決於那些動作的輸出規格。此捷徑只需要開啟操作,並在「結束重複」處結束;它不會將該結果當作新的檔案列表使用。重複動作的資料流程。

使用小規模測試,再處理較大的選取項目

在 Finder 中打開 Finder Opening Test,選取兩個範例文件,然後按住 Control 鍵並按一下其中一個已選取項目。依序選擇「快速動作」和 Open Selected Text in TextEdit。Apple 說明了如何從此內容選單和 Finder 預覽面板執行捷徑。如果找不到捷徑,請檢查它是否可在 Finder 中使用,以及 Finder 延伸功能是否已啟用。從「快速動作」選單執行捷徑。

請確認文件內容,而不只是確認「文字編輯」是否已開啟。你應該能找到 Blue sample 和 Green sample。此工作流程會為每個選取的檔案執行一次開啟操作;它不會設定視窗位置、標籤頁分組或文件順序。

使用這個小型測試矩陣,區分選取問題和 App 問題。以下是建議的檢查項目,不是已回報的測試結果:

測試 檢查內容
只選取 Blue note.txt 藍色範例會開啟。
選取兩個範例文件 可以看到兩份不同的內容。
沒有提供輸入便啟動 顯示設定好的選取提示訊息。
選取來自不同資料夾的兩個同名檔案 兩份不同的內容仍可辨識。

進行最後一項檢查時,請在可丟棄的測試資料夾內建立兩個子資料夾。每個資料夾都儲存一個名為 Sample.txt 的純文字文件,內容分別為 First folder sample 和 Second folder sample。在 Finder 中搜尋並限制搜尋範圍為測試資料夾,同時選取這兩個檔案,然後執行快速動作。

這項診斷很有用,因為此工作流程會直接傳遞所選的檔案項目。其中沒有任何步驟會擷取基本檔名並重建路徑。調整工作流程時,請保留這些直接連接:單靠檔名無法區分這兩份文件。

瞭解檔案存在狀態和名稱衝突的限制

執行開啟操作時,檔案必須已存在。此捷徑沒有建立檔案或復原步驟。如果範例檔案已移動或移除,請從目前位置重新選取後再試。不要只為了補救過期的選取項目而加入固定路徑。

此工作流程也沒有拷貝、重新命名、移動或儲存動作。因此,它不會建立目的地命名規則。位於不同資料夾中的兩個現有 Sample.txt 檔案,在此工作流程中不需要新的輸出名稱。如果之後加入儲存或輸出步驟,請另行決定其目的地,以及遇到現有檔名時的處理方式。

開啟文件也無法證明後續的編輯或輸出操作已成功。請先將第一個版本限制為開啟可丟棄的範例,再依據新增操作各自的輸入、輸出和既有檔案處理方式進行評估。

使用「終端機」隔離輸入問題

如果不清楚如何從 Finder 呼叫捷徑,請使用明確的檔案輸入來測試同一個捷徑。Apple 說明了 shortcuts run 指令和用來提供檔案路徑的 -i 選項。它特別指出,透過管線傳送路徑文字並不相同,因為這會提供文字,而非檔案路徑輸入。從命令列執行捷徑。

建立捷徑和上述兩個桌面範例後,請在「終端機」中執行以下完整的 shell 範例。它會在呼叫「捷徑」前檢查兩個路徑,並為每個路徑加上引號以保留空格。此範例的 shell 語法已經檢查;本研究環境並未執行 macOS 指令或圖形工作流程。

/bin/bash <<'SCRIPT'
set -eu

sample_dir="$HOME/Desktop/Finder Opening Test"
first="$sample_dir/Blue note.txt"
second="$sample_dir/Green note.txt"

for file in "$first" "$second"; do
  if [ ! -f "$file" ]; then
    printf 'Missing sample file: %s\n' "$file" >&2
    exit 1
  fi
done

/usr/bin/shortcuts run "Open Selected Text in TextEdit" \
  -i "$first" "$second"
SCRIPT

此範例只使用兩個明確指定的範例路徑,不會尋找 Finder 目前的選取項目。Apple 說明,捷徑成功執行時的結束狀態為 0,發生錯誤時則為 1;仍請檢查範例文件,以確認預期的可見結果。「捷徑」指令行行為。

從結果首次不同之處開始診斷

如果捷徑已出現卻沒有收到任何輸入,請檢查接受的「檔案」類型,並在 Finder 選取範例檔案後再次執行。如果只開啟了一份文件,請檢查迴圈的列表連接,以及開啟動作的「重複項目」連接。

若要查看進入工作流程的內容,請暫時將「快速查看」放在重複迴圈之前,並明確連接到「捷徑輸入」。也請確保重複迴圈明確連接到「捷徑輸入」。Apple 建議在動作之間插入「快速查看」,以檢查傳遞中的內容。檢查範例後,移除診斷動作。在 Mac 上測試「捷徑」中的動作。

如果開啟了其他 App,請重新檢查「打開檔案」中的 App 參數。如果「文字編輯」無法手動開啟範例,請先解決文件本身的問題。Apple 指出,App 可能因不支援檔案格式而無法開啟檔案。在 Mac 上選擇用來開啟檔案的 App。

兩個可丟棄的範例都能透過 Finder 開啟後,此捷徑便可用於相同任務及相容的本機檔案:選取文件、執行快速動作,並在所選 App 中檢查文件。調整工作流程時,請保留檔案項目和每次迴圈處理一個項目的連接方式。

來源