sironekotoroの日記

Perl で楽をしたい

はじめてのPerl 第6版 第9章 正規表現によるテキスト処理

正規表現とは関係ないけど

  • ダイヤモンド演算子 <> と、特殊変数 $^Iの振る舞いがすごすぎてもう

しかし、もし $^Iに文字列がセットされていたら、 その文字列をバックアップファイル名の拡張子として使うようになります。その動作を説明しま しょう。

ダイヤモンド演算子が、ファイルfred03.dat をオープンする処理について考えてみましょう。 ダイヤモンド演算子は従来通りにそのファイルをオープンしますが、こんどはさらにそのファイ ルをfred03.dat.bak という名前にリネームします。オープンされたファイルはリネーム前と変わ りませんが、今やそのファイルはディスク上では別の名前になっています。次に、ダイヤモンド 演算子は新しいファイルを作成して、それにfred03.dat という名前を与えます。これはまったく 問題ありません─ なぜなら、先ほどリネームしたのでfred03.datというファイルは存在しない からです。そして、ダイヤモンド演算子は、この新しいファイルをデフォルトの出力先としてセ レクトするので、あなたが printしたものはすべてそのファイルに書き込まれます (205p)

  • いちいちバックアップ用の何かを書き足さなくても良いのか。すげーな
    • でも、明示的にバックアップをとってる感じがしなくて・・・ううむ。