传递命令行参数以及STDIN for Perl脚本的输入?
发布时间:2020-12-15 22:03:10  所属栏目:大数据  来源:网络整理 
            导读:我有一个Perl脚本,它接受命令行参数和STDIN #!/usr/bin/perl -wuse strict;use warnings;my $logpath = $ARGV[0];print "logpath : $logpathn";print "Name : ";my $name = ;chomp($name);print "my name is $namen"; 它不会在stdin输入停止. 对于任何一个
                
                
                
            | 我有一个Perl脚本,它接受命令行参数和STDIN 
  
  
  #!/usr/bin/perl -w use strict; use warnings; my $logpath = $ARGV[0]; print "logpath : $logpathn"; print "Name : "; my $name = <>; chomp($name); print "my name is $namen"; 它不会在stdin输入停止. 任何原因? 解决方法
 更改 
  
  
  my $name = <>; 至 my $name = <STDIN>; 如果@ARGV没有元素,那么钻石操作符将从STDIN读取,但是在您的情况下,由于您通过命令行传递参数,@ARGV不会为空.所以当你使用钻石运算符<>要读取名称,将从命令行中指定名称的文件的第一行读取. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! | 
