我有一个调用另一个脚本的perl脚本.我使用反引号调用它并将参数传递给该脚本,它工作正常.
`CQPerl call_script.pl $agr1 $agr2 $arg3`;
Run Code Online (Sandbox Code Playgroud)
但请建议是否还有其他更好的方法.如何检查脚本是否因为调用脚本或调用的脚本而出错.如何从调用脚本本身进行检查?
amo*_*mon 21
如果你不想做错误检查,反引号可能是一个错误的方法.您可能想要使用该system功能.有关错误处理的所有详细信息,请参阅文档,其中包括示例.
Perl有许多可能来执行其他脚本/命令:
qx{}当你想在程序终止后立即读取所有输出exec 当你不想继续你的过程作为另一个程序 - 如果成功,永远不会返回system 当您只对命令的成功或失败感兴趣时open 当您想要将信息传递到命令或从命令传递信息时do并require在此处执行另一个Perl脚本.与C类似#includeopen可以访问STDIN,STDOUT以及STDERR您执行的程序.有关高级信息,请参阅perlipc的相应部分.并始终使用这些调用的多参数形式来避免shell转义(可能很烦人且非常不安全).