我正在尝试从我的 PERL 脚本中调用 ksh 脚本,但无法这样做。
这是我的命令
$cmdString = “/path to script/lookupCal.ksh --service 2 -i /auto/dataprod/MSUkeyDates -f /auto/dataprod/HoursOfOpData --timezone America/New_York”
system($cmdString)
我所做的只是发送一个 Msymbolukeys 的输入文件,以获取一个输出文件,其中包含它们的运行时间(在 ksh 脚本运行后将在 HoursOfOpData 中),我稍后在我的 PERL 代码中阅读了该文件。
当我从命令行运行它时,它按预期工作,但来自我的 PERL 脚本的调用似乎没有调用 ksh 脚本。
我尝试添加一些调试语句
if(system($cmdTmpstr) != 0)
{
if ($? == -1) {
print "failed to execute: $!\n";
}
elsif ($? & 127) {
printf "child died with signal %d, %s coredump\n",
($? & 127), ($? & 128) ? 'with' : 'without';
}
else {
printf "child exited with value %d\n", $? >> 8;
}
}
这是我从日志中得到的输出
**child died with signal 11, without coredump**
有什么提示可以解决这个问题吗?