Che*_*eso 1 perl stdin arguments stdout parameter-passing
我正在尝试修改其他人编写的脚本,我想让我的脚本与他的脚本分开.
我写的脚本以print一行输出,该行输出由空格分隔的所有相关数据.
例如: print "$sap $stuff $more_stuff";
我想在另一个perl脚本的中间使用这些数据,我不确定是否可以使用系统调用我写的脚本.
例如: system("./sap_calc.pl $id"); #obtain printed data from sap_calc.pl here
可以这样做吗?如果没有,我该怎么办呢?
system():
你正在寻找"反击操作员".
看看perlop,"类似报价的运营商"一节.
通常,捕获程序的输出如下:
my $output = `/bin/cmd ...`;
Run Code Online (Sandbox Code Playgroud)
请注意,反引号操作符仅捕获STDOUT .因此,为了捕获所有内容(也是STDERR),命令需要附加通常的shell重定向" 2>&1".