PerlのHTTP::Server::Simple::CGI
モジュールを使用してリモートマシンでコマンドを実行し、 を使用してその出力を返そうとしていますqx//
が、コマンドが成功するかどうかに関係なく、$?
返されるよう-1
です(成功するかどうかを知りたいです) .
特に、ドキュメント ページhttp://metacpan.org/pod/HTTP::Server::Simple#EXAMPLE$who
の例の行設定を次のコマンドに変更しました。HTTP::Server::Simple::CGI
my $who = qx/cat some_file/."\nReturns $?";
ただし、ファイルが存在するかどうかとして$?
表示されます。-1
ファイルが存在する場合はファイルの内容が表示されるため、明らかに基本的に機能しています。これを
perl -le 'print qx/cat some_file/."\nReturns $?"'
256
これは、失敗または0
成功時に返されることを示しています。ちなみに、エラーの場合は失敗を報告しますstderr
- Simple の場合とは異なります。
私がしなければならない特別なことはあり$?
ますか?
私はPerl 5.14.2、Ubuntu 12.04を使用しています。