macのスクリーンショットのファイル名は、デフォルトでは
スクリーンショット 2019-01-31 10:48:30.png
のような形式になっています。
しかしファイル名に半角スペースが入っていると、たまにファイル操作時のエラーの原因になります。
そこで、はじめからスペース無しのファイル名で保存してくれるようにしたいのですが、これが意外と難しい。
下記の記事でシステムファイルをいじる方法が紹介されていたのですが、私はうまく出来ませんでした。


仮にうまくできたとしても、OSをアップデートすると設定が元に戻ってしまうらしいです。
そこで私は上の方法は取らずに、もっと簡単な「フォルダアクション」で解決してみることにしました。
フォルダアクションとは
特定のフォルダに対して、「このフォルダに入ってきたファイルに対して、決められた操作をする」という機能です。
操作の内容は、かなり自由に設定することが出来ます。
今回はこのフォルダアクションを使って、「スクリーンショット保存用フォルダに入ってきたファイルの名前を書き換えて、半角スペースを消す」という処理を作ってみます。
フォルダアクションの設定
まずはAutomatorを起動します。
これはmacにデフォルトで入っているアプリで、様々な自動化作業を作ることが出来ます。
FinderやLaunchpadから検索して、起動してみてください。
起動して「新規作成」を選ぶと下のような画面になるので、「フォルダアクション」を選び、「選択」を押します。
下のような画面になります。
まずは右上のボックス「フォルダを選択」をクリックし、「その他」から、スクリーンショットの保存フォルダを選びます。
次に、左側から「Finder項目の名前を変更」を選び、右側のスペースにドラッグします。
すると、「渡されたFinder項目の名前を変更します。”Finder項目をコピー”アクションを追加して、オリジナルを変更しないでコピーを変更するようにしますか?」という注意が出ます。
要はファイル名だけ変えた新しいファイルを新たに作るか、上書きするか? ということを聞かれています。
今回は上書きでよいので、「追加しない」を選びます。
右側のワークフローに1個ボックスが追加されます。
この内容を編集していきます。
いちばん左上のボックスを「テキストを書き換える」にして、検索文字列に半角スペースを1個入れます。(置換文字列は何も入れないまま)
これでフォルダアクションは完成です。
あとはファイル→保存 で、分かりやすい名前を付けて保存し、Automatorを終了してください。
これで試しにスクリーンショットを撮ってみると、スペース有りのファイル名で一瞬ファイルが作成され、すぐにスペース無しに書き換わるはずです。
注意
ファイル名が他のファイルとダブると、半角スペース有りの名前が付けられてしまいます。
デフォルトの設定を変えていなければ日付と時刻がファイル名につくのでダブリは発生しないはずですが、設定を変えている場合は、日付と時刻が付くように戻しておくのをおすすめします。
$ defaults delete com.apple.screencapture include-date
$ killall SystemUIServer
で元に戻せます。