FTPサーバーにファイルが届くたびに、クライアントを起動して、接続して、フォルダを確認して、ダウンロードして——この繰り返しに慣れてしまっていませんか?それは本来、自動化できる作業です。

FTPサーバーは通知を送ってきません。「新しいファイルが届いたよ」とは教えてくれない。だから多くの人が、定期的に手動で確認するルーティンを続けています。でも、その必要はありません。

なぜFTP転送の自動化が難しいのか

FTPプロトコル自体には、新着ファイルをリアルタイムで通知する仕組みがありません。確認するには「ポーリング」——一定間隔でサーバーに接続してファイルリストを取得し、前回との差分を調べる——という方法をとるしかありません。

これをターミナルのスクリプトとcronジョブで実装することもできますが、設定が複雑なうえ、エラーが発生しても気づけないことがほとんどです。より良い方法があります。

FTPullで自動化する

FTPullはMacのメニューバーに常駐し、指定したFTPフォルダーを定期的に監視して、新しいファイルを自動でダウンロードするアプリです。設定は一度だけ——あとはファイルが自動で手元に届きます。

  1. FTPullをインストールする
    ダウンロードしてアプリケーションフォルダに入れます。起動するとメニューバーにアイコンが表示されます。
  2. 新しい接続を追加する
    設定を開き、「接続を追加」をクリック。ホスト名、ポート番号、ユーザー名、パスワード、プロトコル(FTP/SFTP/FTPS)を入力します。
  3. 監視するリモートフォルダーを指定する
    サーバー上の監視対象フォルダーのパスを設定します。
  4. ローカルの保存先フォルダーを指定する
    ダウンロードしたファイルをMacのどこに保存するかを選択します。
  5. ポーリング間隔を設定する
    FTPullがサーバーを確認する頻度を設定します。即時性が必要なら1分ごと、ネットワーク負荷を抑えたいなら5分ごとが目安です。
  6. 接続を有効にする
    トグルをオンにすると、FTPullがすぐに監視を開始します。
  7. 完了
    新しいファイルがサーバーに届くと、次のポーリングで検出してダウンロードし、macOSの通知を送ります。

便利な追加機能

拡張子フィルター

特定のファイルタイプだけを対象にしたい場合は、拡張子フィルターを設定します。例えば .jpg.pdf だけをダウンロードし、それ以外は無視する、といった設定が可能です。フォルダーにさまざまなファイルが混在している場合に特に便利です。

スケジュール機能

営業時間中にしかファイルが届かないなら、それ以外の時間帯は監視する必要がありません。曜日・時間帯を指定してFTPullのポーリングを制限できます。不要なネットワーク通信を減らし、サーバー負荷も下げられます。

複数の接続

複数のFTPサーバーを監視する必要がありますか?接続をいくつでも追加できます。それぞれが独立して動作し、1つのメニューバーアイコンから管理できます。

転送履歴

FTPullはすべてのダウンロードを履歴として記録します。いつ何をダウンロードしたかを後から確認でき、エラーの詳細も記録されます。

Finderタグでステータスを一目確認

FTPullはFinderのカラータグを使ってファイルの状態を視覚的に表示します——黄色は転送待ち、青は転送中、緑は完了、赤はエラー。アプリを開かなくても、Finderを見るだけで状況が分かります。

一度設定すれば、あとは忘れていい

FTPullはMacのログイン時に自動起動し、メニューバーで静かに動き続けます。ファイルが届くたびに手動で確認する作業から解放されます。設定は一度だけ——あとはFTPullに任せましょう。