cygwinではできた
Administrator@cygwin ~ $ cat test.sed s/world/big world/g; Administrator@cygwin ~ $ cat hoge hello, world! Administrator@cygwin ~ $ sed -i -f test.sed hoge Administrator@cygwin ~ $ cat hoge hello, big world! Administrator@cygwin ~ $ ls -l total 2 -rwxrwxrwx 1 Administrators なし 18 Dec 26 14:29 hoge -rw-r--r-- 1 Administrator なし 21 Dec 26 13:57 test.sed
という感じで、-iオプションで拡張子を指定しない場合、元のファイルに置き換えた結果を上書きできる。perlも多分できるんじゃないかと。(試してないけど)