【问题标题】:Perl Input Parameters [duplicate]Perl 输入参数 [重复]
【发布时间】:2012-07-09 13:08:32
【问题描述】:

可能重复:
How can I pass command-line arguments to a Perl program?

我有解析输入文件并输出 .stat 文件和 .csv 文件的代码。我需要编写什么代码才能从这样的命令提示符运行我的 Perl 脚本?

perl myprogram.pl -i "C:\temp\inputfile.txt" -o "C:\temp\myoutput.csv" -s "C:\temp\myoutput.stat"

-i 是输入文件(必需),-o 是 csv 的输出文件位置(必需),-s 是 .stat 文件的输出文件(可选)。我已经有了程序的代码,但需要实现参数,以便它们可以在命令行中运行。谢谢。

【问题讨论】:

  • 嗯,链接的帖子根本没有提到检查所需的参数。怎么是一模一样的???

标签: perl command-line-arguments


【解决方案1】:
use Getopt::Long qw( GetOptions );

sub usage {
   print STDERR @_ if @_;
   print STDERR ...;
   exit(1);
}

sub help {
   print ...;
   exit(0);
}

my $input_qfn;
my $csv_qfn;
my $output_qfn;

GetOptions(
   "help|h|?" => \&help,
   "i=s"      => \$input_qfn,
   "o=s"      => \$csv_qfn,
   "s=s"      => \$stat_qfn,
) or usage();

defined( $input_qfn )
   or usage("-i option is required\n");
defined( $csv_qfn )
   or usage("-o option is required\n");

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-08-20
    • 2014-03-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-04
    • 2011-02-06
    相关资源
    最近更新 更多