mac(sonoma)の右クリックからスクリプトの実行

やりたいこと

finderで普段実行していることを右クリックで一発で実行します。今回はスクリプトをAutomatorに噛ませることで実現します。実現内容は写真のjpg以外のファイル(rawファイル等)をサブフォルダに格納します。

Scriptの準備

本筋でないので割愛します。引数で受け取ったフォルダ配下のarw,dngをrawフォルダ配下に、MTS,mp4ファイルをmovie配下に移動するスクリプトです。フォルダがなければ自動作成します。

#!/bin/bash
folderPath=$@
checkFiles=(
    "*.ARW,raw"
    "*.dng,raw"
    "*.MTS,movie"
    "*.mp4,movie"
)

for checkFile in "${checkFiles[@]}"
do
    IFS=',' read -r fileExtension folderName  <<< "$checkFile"
    FilePath=${folderPath}/${fileExtension}
    if ls ${FilePath} > /dev/null 2>&1
    then
	    moveFolder=${folderPath}/${folderName}
        if [ ! -e $moveFolder ]; then
    	    mkdir ${moveFolder}
        fi
	    mv ${FilePath} ${moveFolder}
    fi
done

Automatorへの登録

「アプリケーション」から「Automator」を起動し、「クイックアクション」で「選択」をクリックします。

左タブの「ユーティリティ」内の「シェルスクリプトを実行」を右のワークフローにドラッグ&ドロップ

右タブで以下を選択
ワークフローが受け取る現在の項目:フォルダ
検索対象:Finder
シェル:/bin/bash
入力の引き渡し方法:引数として
シェルスクリプト実行欄:シェルの内容を入力

「Command+S」で保存します。その際にクイックアクション名を決定します。

実行方法

Finderでフォルダ名を選んだ時に、先ほどのクイックアクション名が表示されたら成功です。
クイックアクション名をクリックすると、スクリプトが実行されます。

お疲れ様でした。

コメント

タイトルとURLをコピーしました