stdoutに何かを書き込んで、状態コード( "exit status"とも呼ばれる)を返すバイナリプログラムを実行するには、Luaを使用する必要があります。戻り値の取得とプログラム出力
私はウェブを検索して、必要なものを見つけることができませんでした。
os.execute()
がio.popen()
が、私は両方を必要とするしかし、プロセス出力に
を読み取るために使用できるファイルハンドラを返すステータスコードを返します。しかし、私はLuaの中にいることが分かりました。シーンの背後にある両方の関数を実行するラッパー関数を書くことは、プロセスオーバーヘッドと、おそらくは連続した実行での結果の変更のためにオプションではありません。私はこのような関数を書く必要があります:
function run(binpath)
...
return output,exitcode
end
誰もがこの問題を解決する方法を知っていますか?
PS。ターゲットシステムはLinuxを実行します。それをあなたは小さなシェルスクリプトを書くことができ、またhttp://code.google.com/p/lua-ex-api/
(bashのを想定しまたは類似が利用可能です):
ありがとうございます。はい、私たちは小さなLinuxシステム上にシェルを持っています。これは問題に対する最速の解決方法です。 – AlexStack
@AlexStackあなたは大歓迎です。 –