包装脚本和getopts :: long perl



我一直在尝试制作getopts ::我的代码长期工作,但这只是没有响应。我有一个包装脚本,其中包含大约8个脚本和2个命令。我一直在尝试getopts ::长期提交论点,但它行不通!

例如,我已经脚本1虽然8,并且在命令行上,我正在尝试一些我想提交给单独脚本的选项。当我在Seprate脚本中使用GetOpts模块并分别运行它们时,它们运行良好。但是,当我尝试运行包装脚本时,请说wrapper.pl启动脚本1,并在其中调用模块。提交的参数不是由单独的脚本进行的。

请帮助!!!!

我希望这种解释问题。包装脚本看起来像这样(Wrapper.pl),使用Backticks:

perl Script1.pl;

perl script2.pl;(etc)

script1.pl使用getopts ::输入文件的长选项。script1.pl使用" -i"选项调用输入文件,但是在命令行上启动时未读取该文件。

命令行选项:perl wrapper.pl -i seqses.fa -o op.fa

您实际上是通过包装器的参数传递到 脚本? - 他们如何神奇地知道他们需要哪些选择 处理?

vanhoesel提出了正确的问题;您必须在wrapper.pl中进行类似的事情:

use Getopt::Long;
GetOptions('i=s' => $input_file,
           'o=s' => $output_file) || die "Usage: $0 -i INPUT -o OUTPUTn";
`perl script1.pl -i $input_file`;
`perl script2.pl -o $output_file`;

最新更新