读书人

急文本操作有关问题求支招

发布时间: 2012-02-10 21:27:42 作者: rapoo

急!!!文本操作问题,求支招
小弟写了一个程序,想将一个文件夹中所有的文本文件替换掉部分内容,然后保存
程序主函数如下:

Perl code
sub main{    $^I = ".bak";    while(@ARGV)    {        $ARGV = shift @ARGV;        if(-B $ARGV)        {           warn "$ARGV is a B file!\n";           next;        }        if(!open(ARGV, $ARGV))        {           warn "Can't open $ARGV: $!\n";           next;        }        print $ARGV." changed\n";        while(<ARGV>)        {                           #s///;                                    print;        }        close(ARGV);    }    unlink glob "./log/*.bak"; }
这个程序运行的结果
print $ARGV." changed\n";
只有操作第一个文件时打印出来了
同时,第一个文件的操作结果显示到命令行,而文件本身没有变化

第一个文件以外的文件修改成功了

很不解这是为什么啊~~~
求大牛们解释并赐予解决方案啦~~
拜谢!


[解决办法]
Perl code
如果你想让别人看你的代码,先学会贴代码。
[解决办法]
写文件可不是简单的print,需要加文件句柄的

读书人网 >perl python

热点推荐