毎度忘れるので、備忘録。
perl で既存ファイルの文字列を置換して、元のファイルを上書きするには、
% perl -pi -e 's/[source]/[destination]/' [file]
- -p : ファイル中のすべての行に対してコードを実行する
- -i[extension] : 対象ファイルを上書きする。extension指定されている場合はバックアップを作る
例えば、MovalbeTypeの perl実行ファイルのパスを /usr/bin/perl から /usr/local/bin/perl に変更するには、インストールディレクトリを [mt] として、
% cd [mt] % perl -pi -e 's/\/usr\/bin\/perl/\/usr\/local\/bin\/perl/' mt*.cgi