Macでクリップボードの内容をテキストファイルとして保存する
Macで、表示されているテキストをさっと保存したいことがあります。
この記事では、Mac標準のAutomatorを使い、クリップボードにコピーしたテキストを.txt
ファイルとして書き出す方法を紹介します。
Automatorの新規作成から、アプリケーションを作成してください。
筆者はclipboard-to-txt
という名前で作成しました。
シェルスクリプトを実行
アクションを追加します。
多数のアクションが用意されているので「実行」などのワードで検索すると楽です。
追加したシェルスクリプトを実行
アクションに、以下のスクリプトを設定します。
pbpaste > ~/Downloads/CLP.txt && open ~/Downloads/
pbpaste
コマンドでクリップボードの内容をファイルへ書き出しているだけです。
ついでにopen
コマンドで保存先のディレクトリを開くようにすると、すぐにファイルを確認できます。
これでひとまず「クリップボードの内容をファイルへ保存」はできているのですが、ファイル名が固定となっているため、毎回上書きすることになってしまいます。
したがって、以下のようにファイル名をdate
コマンドを使って生成します。
pbpaste > ~/Downloads/CLP-$(date "+%Y%m%d-%H%M%S").txt && open ~/Downloads/
これで、CLP-20220101-122805.txt
のように、ファイル名にタイムスタンプを含めた形で保存することができます。
SpotlightやAlfredなどのランチャーからこのアクションを呼び出すことで、クリップボードの内容をさっと保存することができます。
選択してコピーできるテキストはなんでも保存できるので、Webページの魚拓や、何らかのログの保存など、応用範囲が広いです。
また、単純なテキストファイルを保存しているだけなので、(シェルスクリプトに慣れている方は)「保存先を変える」「1行目にタイトルを入れる」などのカスタマイズも可能でしょう。
Macユーザーの方はお試しください。
Discussion