1

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**

これを修正するためのヒントはありますか?

4

1 に答える 1