人気コンテンツ今日: |
HTMLファイルを一括で変更する2(perl編)sasaki 火曜, 2006-08-15 03:03
perlについてのメモ。 一括変更のときに、コマンドオプションがどんな働きをするかを参照できるようにメモしておく。
■-eでperlの命令をそのまま実行できる$perl -e ' print "Hello!?n" ' -pでループと同じ働きを繰り返しさせる。 $perl -pe 1 index.html -eと合わせて、コマンドラインで指定されたファイルごとに命令を実行。 上記の1はperlの命令のreturn 1;と同じ命令で、index.htmlの中身を1行ずつ繰り返しプリントする。 このループの働きと同じ。 LINE: ■index.htmlの中の白で指定している色をグレーに変更するファイル名は別名で保存する必要があるので、index_new.htmlとする。 $ perl -pe 's/#FFFFFF/#333333/g' index.html > index_new.html
たくさんファイルがあると、上記方法だとキーボードをたたく指が疲れるので、-iを組み合わせて使う。 $ perl -pi -e 's/#FFFFFF/#333333/g' index.html ありがたいことに複数ファイルも対応できるので、 $ perl -pi -e 's/#FFFFFF/#333333/g' *.html
心配だからバックアップをとりながら、というときは、 $ perl -pi.BAK -e 's/#FFFFFF/#333333/g' *.html ちょっと待てよ、#FFFFFFじゃなくて、#ffffffで指定してるのもあったというときは、iでマッチングさせる。 $ perl -pi.BAK -e 's/#FFFFFF/#333333/i' *.html カレントディレクトリだけじゃなくて、htmlの入った全部のディレクトリを一括で変更したいときはfindで見つけたファイルをperlに送り込む。xagsを使えば橋渡しをしてくれる。 最初に確認。 $ find /home/myname/public_html -name "*.html" 次に本番実行。 $ find /home/myname/public_html -name "*.html" | xargs perl -pi -e 's/#FFFFFF/#333333/g'
印刷用 | カウント(207)
|
Webマスターな生活amazon広告英語お勧め教材! 英語の学校でも使っているのですが、1つのストーリーを3分で読めて、内容も面白く、もっと早く出会いたかった本です。 Apple好きで英語も勉強したいならこの一冊! 天気情報ブログパーツ |