lftp のミラーで .svn など特定のディレクトリを無視する
lftp のミラー機能はお手軽で、ディレクトリを再帰してたどり、指定した階層がまるまるコピーされる。スクリプト化して処理するのにも便利。でも、バージョン管理しているウェブサイトなんかを転送するときに CVS やら .svn などのディレクトリができてしまうのはイマイチ。
で、久しぶりに man を見ていたら スラッシュ - "/" 付きで指定すればディレクトリと解釈されるって書いてあることに気づく。
たとえば、.svn や CVS ディレクトリを無視して、html ファイル群をアップロードするならこんな感じ。
mirror -R -X .svn/ -X CVS/ -I *.html -I *.css -I *.png
知らなかったので、svk 経由で .svn ができないようになどしていたけれど、そんなことしなくても大丈夫なのだ。man じゅーよう。