MacのHazelを使ってpdfを自動で整理してみた。

    Head

    最近とある講座を受講しています。

    その講座はメールで色々なお知らせや役に立つ情報が送られてくるので、後で見返せるようにpdfにして保存していました。

    何故pdfで保存しているのかというと僕自身が「インボックスゼロ」という方式でメールを処理していることもあり、基本的にフォルダなどを作ったりはせず閲覧したものはすべてアーカイブしてしまうためです。

    ※インボックスゼロについては記事の主旨にそれるのでこの記事では解説しませんが、メール処理の方法としては簡単だけど非常に効果的な運用ルールだと思うので、興味のある方は是非検索してみてください。

    都度エクスポートがめんどくさい

    普段はMacのMailを使ってメールの運用をしています。

    エクスポートしたいメールを選択して都度pdfにエクスポートしているのですが、一日複数メールが送られてくるものを都度処理するのが、とにかくめんどくさい。

    これはなんとか自動化したい!

    そこでApple Scriptでエクスポートを自動化する処理を書いたのですが、書き出す先のフォルダ指定をApple Scriptで書くのがこれまた面倒だったので、Downloadフォルダに出力したものをしばらく手動で動かしていました。

    ただ、この手の処理は一部の処理だけを自動化するだけではあまり自動化するメリットを感じられないので、フォルダへの振り分けも自動化することにしました。

    シェルスクリプトで移動する処理を書いてみたものの・・・

    フォルダの振り分け自体はシェルスクリプトで書く方が楽だったので、シェルスクリプトで書いて、これ自体は問題ないのですが、書き出しスクリプトを走らせた後に、振り分けスクリプトを実行するという、「つなぎの部分」が手動でしないといけないことが地味にめんどい・・・

    なので、Apple Scriptで書き出す処理にシェルスクリプトの実行も組み込むことも考えたのですが、ちょっとコードを書く気分でもなかったので、フォルダアクションで振り分けてしまおうと思いました。

    しかし普段全く使わないので、めんどくさい(またw)気分になってしまった時に、ふと目に入ったのがHazel(公式サイトはこちら).

    ※HazelはMacで簡単にメールの振り分けの要領でファイルの振り分けしたりリネームしたり、スクリプトの実行などを行えるとっても便利なツールです。色々設定をしていたのですが、Mac入れ替えでデータを初期化する際ルールのバックアップを忘れてルールが消えて以来、入っているものの放置してました。

    導入したものの全く使っていなかったHazel

    そうだ!Hazelでシェルスクリプトを実行しよう!

    と思い、Downloadフォルダにpdfが出力されたら振り分けスクリプトが実行されるようにしました。

    Hazel簡単で楽チン。

    前置き長くなりましたが、具体的にどうしたかこれから解説していきます。

    Hazelの設定

    Hazelのメニュー画面を出します。
    1

    上記の赤枠で囲った部分をクリックします。

    左下にも「+」ボタンがありますが、それは実行するフォルダをどこにするかを指定する際のものです。

    今回はDownloadフォルダにあるpdfファイルに対して実行しますので、ここは登録されているという前提で進めます。(購入時は左側のFoldersには何もありません)

    2

    上記のような画面が表示されますので、Nameの欄にわかりやすい名前を付けてください。

    続いて四角の線で囲われた2つの段の上側、3つの選択欄をそれぞれ「Kind」「is」「PDF」と設定します。

    これはファイルの種類がpdfの場合に実行しますという意味です。

    色々な組み合わせがありますので、興味のある方は是非試してみてください。

    上の段の設定が完了したら続いて下の段を「Run shell script」「実行するスクリプトファイルを指定」

    に設定してください。

    ※キャプチャ画像では「embedded script」となっていますが、これは別途スクリプトファイルを読み込むのではなくHazelに直接スクリプトを記載する方法です。この場合スクリプトを記述するためには右側の「Edit script」をクリックすると入力画面が表示されます。また余談ですが、シェルスクリプト以外にApple Scriptも実行できます。

    設定したら「OK」ボタンをクリックします。

    以上で設定は完了です。

    あとはHazelが自動で判断して振り分けのスクリプトを実行してくれます。

    便利だ!

    まとめ

    なんでもかんでもプログラムを書こうと思ってしまいがちですが、すでに便利なツールがあるならそっちを使った方がいいですよね。

    ではまた。

    SNSでもご購読できます。