ワンライナーのオプション
オプション 内容
-e 引数に記述された内容を実行する
-n 引数全体がwhile(<>){...}というループに囲まれたのと同じように動作する
-p 上記と似ているがループの最後にprint文が実行される

ファイル内の文字列を置換
  • fileの中の文字列を置換します。当然ですが正規表現が使用可能です。
perl -pe 's/置換前/置換後/g' filename

コメント&空白行を非表示
perl -pe 's/^\s*#.*\n$|#.*$|^\s*$//' filename
  • filenameで指定したファイルのコメント(#で始まる行と行の途中からの#以降)と空白の行を削除します。#がコメント機能以外で使用されているとそれも削除されてしまうので、行の途中からの#以降を消したくない場合は、
perl -pe 's/^\s*#.*\n$|^\s*$//' filename
こんな感じで。

grepのように使う
perl -ne 'print if (/検索パターン/)' filename

ミリ秒表示のUTC時間を読みやすい形式に変換
  • squidログを追うときのお供に・・・
perl -pe 's/^\d+\.\d+/localtime $&/e' filename
最終更新:2007年02月22日 13:29