一个有用的Perl修改文件的模块

来源:互联网 发布:iis7 php http503 编辑:程序博客网 时间:2024/06/03 19:03
Tie::File
最近由于工作需要需要在读取文件内容的时候同时修改文件的内容。折腾了一阵,最后用的一个很傻瓜的方法来解决这个问题。
将文件内容读入到数组中,然后对数组进行修改。然后删除文件再创建新的同名文件。
 
虽然问题暂时解决了,但后来一想应该还有更好的方法。于是找到这个模块。
Tie::File - Access the lines of a disk file via a Perl array
 
基本使用例子:
    # This file documents Tie::File version 0.98        use Tie::File;        tie @array, 'Tie::File', filename or die ...;        $array[13] = 'blah';     # line 13 of the file is now 'blah'        print $array[42];        # display line 42 of the file        $n_recs = @array;        # how many records are in the file?        $#array -= 2;            # chop two records off the end        for (@array) {          s/PERL/Perl/g;         # Replace PERL with Perl everywhere in the file        }        # These are just like regular push, pop, unshift, shift, and splice        # Except that they modify the file in the way you would expect        push @array, new recs...;        my $r1 = pop @array;        unshift @array, new recs...;        my $r2 = shift @array;        @old_recs = splice @array, 3, 7, new recs...;        untie @array;            # all finished
 
 
 
0 0