入力で使うファイルは以下
$ cat test.c main () { return 1; }
これを置換すると以下の結果を得る。
$ perl -pe "s/main/main2/" test.c main2 () { return 1; }
バックアップするには-iオプションを使う。
$ perl -i".bak" -pe "s/main/main2/" test.c
入力ファイルはリネームされ、リネームされたファイルを入力として出力先ファイル名が入力ファイルの元の名前になる。
$ mkdir test2 $ cp test.c test2/ $ ls -li test2/ total 4 575975 -rw-r--r-- 1 my my 23 Oct 30 05:29 test.c $ perl -i".bak" -pe "s/main/main2/" test2/test.c $ ls -li test2/ total 8 575976 -rw-r--r-- 1 my my 24 Oct 30 05:30 test.c 575975 -rw-r--r-- 1 my my 23 Oct 30 05:29 test.c.bak