既存のPerlスクリプトをあまりCPUコストは考慮せず、open関数の部分を変更するだけで
ある処理を加えるという事をしたいと思っています。
やりたい事は↓↓↓のような感じなのですが
file.txtの中身
---ここから---
そうなんです
大変なんですよ奥さん
---ここまで---

open(IN, "file.txt"); # ※1
#oreshiki_open(IN, "file.txt"); # ※2
print <IN>;
close(IN);

sub oreshiki_open{
 my $fh = shift;
 my $fileName = shift;

 open($fh, $fileName);
 (my $str = join '', <$fh>) =~ s/です/やん/g;
 close($fh);

 open(TMP, ">temp.txt");
 print TMP $str;
 close(TMP);
 
 open($fh, "temp.txt");
}
これだとopen関数の部分をオレ式openに変えるだけで目的が達成出来るのですが
見ての通り美しくありません。
どなたかグッドなアイディアはないでしょうか?