2012-04-05 21 views
0

コマンドプロンプトを起動したいが、コマンドプロンプトからの出力はしたくない。正常に動作しますが、1つのcmd.exeが終了しませんcmd/qが期待どおりに動作していない

cmd /q dir 

- だから私は、としてそれを始めています。私はthis-

cmd /q /c dir 

を使用している場合、私は私が見て/ Qオプションは、出力は無効になりません

+0

あなたは何をしようとしていますか? 'cmd/q/c rem'は出力を全く持たないでしょうが、それはノーオペレーションです。もしあなたがそれを実行したくなければ、なぜあなたは 'dir'と呼んでいますか? '/ Q'は' echo off'の効果があります。それ以上のものはありません。すべての出力を抑制するわけではありません。 – Joey

+0

私はdirを例として使って、他のコードを呼び出しています。 mycode.exeでdirを置き換えた場合、mycode.exeの出力を見たくないです。 – user837208

+0

実際に試したコードを与えることができますか? – PresleyDias

答えて

5

、それだけでECHO OFFになります。期待していないdirコマンドの出力を見ることができます通常は必要ではありませんが、便利になる機会があります。

すべてのエラー以外の出力を無効にするには、stdoutをnul(>nulまたは1>nul)にリダイレクトします。エラー出力を無効にしたい場合は、stderrもリダイレクトする必要があります(2>nul)。

>nul 2>nul cmd /c dir 

補遺

アンドリー・Mは、質問の彼のコメントで良い点を持っています。おそらくCMDを経由せずに直接コマンドを実行することができます。リダイレクトは同じように動作します。

>nul 2>nul yourCommand.exe 
+2

@ user837208:特定のケースでは、出力がネットワーク経由で送信されないようにリモートシステム上でリダイレクトを行う必要があります。psexec \\ target cmd/c "> nul 2> nul yourCommand.exe" –

関連する問題