#contents * 関連するコマンドラインオプション :-e commandline| 実行するプログラムを記述 :-p| sedエミュレーション~ 1行読み込み、自動で出力~ while (<>) { ... # your program goes here } continue { print or die "-p destination: $!\n"; } :-n| ~-pの自動出力なし版 :-a| ~-p -nによるループで自動 split~ @Fに代入される :-Fpattern| ~-aのsplitのパターン指定 :-i[extension]| ファイル置換(など)~ extensionを指定するとバックアップのファイルにその拡張子がつく~ 指定しないと上書き * sedエミュレーション perl -pe 's/hoge/HOGE/g' * ファイル置換/バックアップ perl -i.bak -p -e 's/<body>/<body bgcolor="#C0C0C0">/ig;' *.html 該当するファイルの置換とバックアップ。 use File::Findより楽っぽい。 * fullpath perl -MCwd -MFile::Basename -pe 'chomp; $_ = Cwd::abs_path(dirname($_))."/".basename($_)."\n"' * 変なの 某所にてcrontabで回そうとしてたけど消した。~ 長いので適当に改行しているけど1行で。 0 0 15 * * du -m --max-depth=1 /home | head -n -1 | perl -ane '($size,$path)=@F; $user=$path; $user=~s|/home/||; echo $path ${size}MB | mail $user -c root -s "du /home" if $size > 500;'