我正在尝试从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**
有任何解决此问题的提示吗?
答案 0 :(得分:0)
这有帮助吗?
my @cmd = (
"/path to script/lookupCal.ksh",
"--service", 2,
"-i", "/auto/dataprod/MSUkeyDates",
"-f", "/auto/dataprod/HoursOfOpData",
"--timezone", "America/New_York"
);
system @cmd;