FinderといえばOS Xの"顔"そのもの、ファイルブラウザという本来の役割を超えた存在だ。ここ数年はOS Xの歩みが緩やかになり、かつてほど抜本的な機能変更は見られなくなったものの、立ち止まることなくシステムのバージョンアップとともに姿を変えている。El Capitan時代のいま、Terminalからでしか行えないFinderの環境設定術をいくつか紹介しよう。
デフォルトで表示されるフォルダを手動設定する
Finderの環境設定パネルでは、新規Finderウインドウを開いたとき表示するフォルダを指定できる。初期設定では「マイファイル」だが、いまひとつ利用価値を見いだせないという場合には他のフォルダを指定したほうがいい。
この設定は、以下のとおりdefaultsコマンドを実行しても変更できる。Finderのプロパティリストにある「NewWindowTarget」と「NewWindowTarget」というエントリに適切な文字列を設定するのだが、工夫すればGUIでは設定困難な新規Finderウインドウを設けることができる。
$ defaults write com.apple.finder NewWindowTarget -string [表1の文字列]
$ defaults write com.apple.finder NewWindowTargetPath -string [表2の文字列]
たとえば、Finderの検索結果(スマートフォルダ)を表示したい場合には、以下の要領で検索クエリー(*.savedSearch)のフルパスを指定すればいい。ただし、Finderの初期設定に従いライブラリの「保存済みの検索条件」フォルダ(~/Library/Saved Search)へ保存した検索クエリーは、動作しないことがあるので利用は避けよう。筆者の環境では、「書類」フォルダに保存した検索クエリーの動作を確認している。
$ defaults write com.apple.finder NewWindowTarget -string "PfLo"
$ defaults write com.apple.finder NewWindowTargetPath -string "file:///Users/ユーザ名/△△△/○○○.savedSearch"
NewWindowTargetの値 | |
コンピュータ名 | PfCm |
ルート(起動ボリューム) | PfVo |
ホームフォルダ | PfHm |
デスクトップ | PfDe |
書類 | PfDo |
iCloud Drive | PfID |
マイファイル | PfAf |
その他 | PfLo |
NewWindowTargetPathの値 | |
ルート(コンピュータ名) | なし |
起動ボリューム | file:/// |
ホームフォルダ | file:///Users/ユーザ名 |
デスクトップ | file:///Users/ユーザ名/Desktop |
書類 | file:///Users/ユーザ名/Documents |
iCloud Drive | file:///Users/ユーザ名/Library/Mobile%20Documents/com~apple~CloudDocs/ |
マイファイル | file:///System/Library/CoreServices/Finder.app/Contents/Resources/MyLibraries/myDocuments.cannedSearch |
その他 |
選択したフォルダのフルパス |
パス名コピーの使い分けが必要な理由
El CapitanのFinderには、新機能として「パス名をコピー」が追加された。Finderで対象のファイル/フォルダを選択し、Controlキーを押しながらクリック、現れたコンテキストメニューの中ほどにある「○○をコピー」をoptionキーながらクリックすると、「○○のパス名をコピー」として処理される。
これでファイルのフルパスをかんたんにコピーできるようになったが、1つ落とし穴がある。ファイル/フォルダの途中にスペースが含まれていても、なにもしてくれないのだ。スペースが含まれている場合、パスの前後をクオーテーションで囲まなければシェルは一連の文字列として解釈してくれず、コマンドラインやシェルスクリプトを実行するときのエラーにつながる。
一方、El Capitan以前からサポートされていたTerminalの「ファイルのドラッグ&ドロップでパスを表示する機能」は、パスに含まれるスペースはバックスラッシュを用いてエスケープ(無効化)してくれる。複数のスペースが含まれるファイル/フォルダのパスをコピーする場合は、Finderの「パス名をコピー」ではなく、Terminalにドラッグ&ドロップして表示されるパスを手動コピーしたほうが仕事は早いはずだ。必要に応じて使い分けよう。