やりたいこと
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でフォルダ名を選んだ時に、先ほどのクイックアクション名が表示されたら成功です。
クイックアクション名をクリックすると、スクリプトが実行されます。

お疲れ様でした。
コメント