weex - ミラーリング with ftp
解説 
Fast Webpage Exchanger (weex) は web ページあるいはその他のアーカイブを 遠隔メンテナンスする作業を自動化するために作成された非対話型 FTP クライアントです。weex を使えば web ページを FTP でサーバに転送する作業を 大幅に簡略化することができます。
だそうです。 時間を比較して新しいファイルのみ転送してくれたり、リモート側にのみ存在するファイルを自動的に削除してくれたりします。 詳しくはインストール時についてきた以下のドキュメントを見てください。
以下、ポイント
自分は [default] に
Monochrome = True NestSpaces = -1 ShowHiddenFile = True FollowSymlinks = True
を追加しています。Monochrome (表示を白黒にする) や NestSpaces (ツリー表示の際、いくつ右にずらすか) はどうでもよいとして、 ShowHiddenFile を True にしておかないと、. (dot) で始まる隠しファイルを 送ったくせに消してくれなかったりします。 また、自分は public_html 内にディレクトリへのシンボリックリンクを おいているので、FollowSymlinks を True にしています。
SrcDir, DestDir は シンボリックリンク名ではなく、本物のパスで指定 しなければいけないようです。会津大学でのホームディレクトリは シンボリックリンクなので、
% pwd
として調べましょう。
IgnoreLocalDir では指定したディレクトリ以下のファイル、ディレクトリが すべてないものとして考えるという仕様のようです。 "以下"なのか、"指定したディレクトリだけ"なのかが README には書いてありませんが、実際やってみたところ、"以下"のようです。 基本的には相対パスでかけばいいようです。絶対パスでもいいようです。 またワイルドカードも使えまして、例えば
IgnoreLocalDir = /*/local
のように設定すると /.../local にも /.../.../local にもすべてマッチします。文字列マッチングのようです。 シェルのワイルドカードなら /.../local だけなのですけどね。 /local にだけはマッチしないので、すべての local ディレクトリをアップしない、という条件は
IgnoreLocalDir = /*/local IgnoreLocalDir = /local
のようになります。とはいえ、SrcDir で指定したディレクトリよりも /local ディレクトリが 上の場合は元々アップロードされていないので /local は必要ありません。
また、すべてのファイルをアップしない=アップしたすべてのファイルを削除するという条件は、同じ理由で、
IgnoreLocalDir = /*/
のようにすれば良いようです。
IgnoreLocalFile では絶対パスで記述した場合にはその指定されたファイルのみが 有効となり、ファイル名のみを指定した場合には、全ディレクトリで有効、つまりファイル名部分の文字列マッチングになるようです。
また、途中で終了させたり、他の ftp クライアントを使用してしまうと、 cache ファイルに不整合がでるので、そのときは
% weex -r [hostid]
のようにして一からやり直しましょう。
&ref(): File not found: "install_weex.txt" at page "UNIX/学生ツール/ネットワーク/weex";