Mac形式のNASのファイルパスをWindows形式にAutomatorで変換してクリップボードにコピーする
「Windows形式のNASのファイルパスをMac形式にAutomatorを利用して変換し開く - めも帖」から逆に、Mac形式からWindows形式にAutomatorでしてみたいと思います。今回も、調べたら「Mac形式のNASのファイルパスをWindowsの形式に変換する君 - 僕の車輪の再発明」というページがありました。
ファイルパスを取得するプラグインをAutomatorにいれる
- プラグインのページに、入れ方が書いてあるのでその通りに
- http://www5.wind.ne.jp/miko/mac_soft/automator_actions/pgs/GetFilePathAMA.html
Automatorの新規で作り始める
- 書類の選択:「サービス」を選択
「サービス」の設定
- 受け取る選択項目「ファイルまたはフォルダ」
- 検索対象「すべてのアプリケーション」
アクションの選択
「ファイルパスを取得」のポイント
「シェルスクリプトを実行」のポイント
- URLなのでデコードが必要
- 日本語が混ざるので変換するためのライブラリをいれる
- Windows形式への変換処理が必要
URLのデコードのためにnkfのインストール
日本語の処理のために、nkf が必要。でも、Macには入っていない。今回は brew で nkf を入れました
$brew install nkf ==> Downloading http://dl.sourceforge.jp/nkf/59912/nkf-2.1.3.tar.gz ######################################################################## 100.0% ==> make CC=clang ==> make install prefix=/usr/local/Cellar/nkf/2.1.3 MKDIR=mkdir -p 〓〓〓〓 /usr/local/Cellar/nkf/2.1.3: 4 files, 352K, built in 5 seconds
シェルスクリプトの設定
- 入力の引き渡し方法:「引数として」を選択
- nkf を利用しますが、.bash_profile などを読み込んではくれないみたいなので、/usr/local/bin/nkf としました
- sed での処理は遠い彼方の記憶にある「にわかエンジニア」なので不安
echo $@ | tr % = | /usr/local/bin/nkf -WwmQ | sed 's/.*@/\/\//g' | sed 's/\//\\/g'
保存
- 保存時につけた名前が、サービス名になります