0

execl または system (または別のコマンド) を使用して "/sbin/" から Linux シェル コマンドを実行し、その出力を非表示にしたいと考えています。

子プロセスを取得するためにすでに「フォーク」を使用しています...

入ったらみたいな…

service "servicename" restart

「restarting xyz [OK]」という出力が表示されます。代わりに、コンソール アプリケーションに表示する代わりに、コマンドをサイレント モードで実行し、その出力を破棄したいだけです。

4

2 に答える 2

2

これをコマンドに追加できます: " > /dev/null 2>&1 "

したがって、コマンドは次のようになります。 service [servicename] restart > /dev/null 2>&1

これが行うことは、stderr を stdout (2>&1) にリダイレクトし、stdout を /dev/null ( > /dev/null) にリダイレクトすることです。

于 2012-11-19T13:50:30.147 に答える
1

出力を次の場所にリダイレクトします/dev/null

例えば。、

service smb restart 1> /dev/null

service smb restart 2> /dev/null

とは1と を2表しますstdoutstderr

于 2012-11-19T13:51:42.997 に答える