Dropboxの手軽さは修正したら自動で同期されるという点にあると思います。この変更したら自動という点が重要で、作業が終わったら手作業でアップロード…なんて手間をかけているから作業を忘れてしまったり面倒に感じるのです。 ということで今回はAuto SFTPを紹介します。ファイルを追加、修正したら自動でSFTPを使ってアップロードしてくれる、そんなユーティリティです。

Auto SFTPの使い方

ヘルプは次のようになっています。

$ ruby sftp.rb -h


-f:
     sftp.yamlに書かれているファイルを呼び出してSSHで接続します。
     example: $ ruby sftp.rb servername
              servernameはyamlに記載されている上位のキーになります。

-i:
     対話型で接続します。
     example: $ ruby sftp.rb -i username@host:port

-r:
     リモート先を確認出来ます。

-h:
     helpが表示されます。

sftp.yamlを修正して、接続先のID/パスワードを入力します。後は実行すると自動的に監視がはじまります。

$ ruby sftp.rb -f sample
C: create  U: update  D: delete E: error

Name      sample
Host      s59.coreserver.jp
Accepted  2014-03-17 10:26:06 +0900

実行中。Eが頭にあるということはエラーですが…

Auto SFTPが便利なのはディレクトリを指定することで、新規作成もカバーしてくれるという点です。これにより、Webサーバ上のファイル構成とローカルを常に同じ状態にできます。rsync的に使えますが、随時アップロードしてくれるという点が利点ですね。

Auto SFTPはRuby製のソフトウェア(ソースコードは公開されていますがライセンスは明記されていません)です。

pikonori/auto_sftp