我正在编写 Perl 脚本。如何向其传递命令行参数?
示例:
script.pl "string1" "string2"
最佳答案
取决于你想做什么。如果你想使用这两个参数作为输入文件,你可以将它们传入,然后使用 <>
阅读其内容。
如果它们有不同的含义,您可以使用GetOpt::Std
和GetOpt::Long
轻松处理它们。 GetOpt::Std
仅支持单字符开关和 GetOpt::Long
更加灵活。来自 GetOpt::Long
:
use Getopt::Long;
my $data = "file.dat";
my $length = 24;
my $verbose;
$result = GetOptions ("length=i" => \$length, # numeric
"file=s" => \$data, # string
"verbose" => \$verbose); # flag
或者,@ARGV
是一个特殊变量,包含所有命令行参数。 $ARGV[0]
是第一个(即 "string1"
在你的情况下)和 $ARGV[1]
是第二个参数。您不需要特殊模块即可访问 @ARGV
.
关于perl - 如何将命令行参数传递给 Perl 程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/361752/