perl ,关于文件句柄的疑问!
root@luis-VirtualBox:~#tail-n3perl.pl#!/usr/bin/perlopenLOG,"<pinglist1.txt";openLOG,...
root@luis-VirtualBox:~# tail -n 3 perl.pl
#!/usr/bin/perl
open LOG, "<pinglist1.txt";
open LOG, ">>perl_logfile";
exit
root@luis-VirtualBox:~# cat pinglist1.txt
1987
2008
3000
2000
2012
1200
1300
脚本跑完后没报错,但是perl_logfile文件依然是空的,请问这是为什么? 展开
#!/usr/bin/perl
open LOG, "<pinglist1.txt";
open LOG, ">>perl_logfile";
exit
root@luis-VirtualBox:~# cat pinglist1.txt
1987
2008
3000
2000
2012
1200
1300
脚本跑完后没报错,但是perl_logfile文件依然是空的,请问这是为什么? 展开
2个回答
展开全部
兄弟,你 只打开了文件,而且,读入与追加描述符用的是一个。
看你这意思,应该是用perl 复制一个文件。按照下面的写就行了。
open(LOG,"<pinglist1.txt");
open(LOG1,">>perl_logfile");
print LOG1 LOG; #这一句的意思就是把你打开的文件描述符LOG的内容,写到LOG1里。
close(LOG);
close(LOG1);
看你这意思,应该是用perl 复制一个文件。按照下面的写就行了。
open(LOG,"<pinglist1.txt");
open(LOG1,">>perl_logfile");
print LOG1 LOG; #这一句的意思就是把你打开的文件描述符LOG的内容,写到LOG1里。
close(LOG);
close(LOG1);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
只是打开文件怎么会有东西写进去呢?
open LOG, "<pinglist1.txt";
open LOG1, ">>perl_logfile";
while(<LOG>){print LOG1 $_;}
close(LOG);close(LOG1);
open LOG, "<pinglist1.txt";
open LOG1, ">>perl_logfile";
while(<LOG>){print LOG1 $_;}
close(LOG);close(LOG1);
更多追问追答
追问
谢谢,
能详细解释一下这句么?
while(){print LOG1 $_;}
这句的意思是把LOG的内容存到LOG1里么?$_变量在这里起什么作用?
追答
对的
$_= $m=;print LOG1 $m作用一样
不加默认就是到$_
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询