私はバッチコードを書くのに助けが必要です。私はそれがnotepad.exe
ELSIF、その後taskkill /im notepad.exe
を実行している場合notepad.exe
は を実行しているかどうかを確認する必要がNotepad.exeが実行されていて、タスクが実行されていない場合は次の文に移動します
は、次のバッチのステートメント/コードに行く、その後実行されていません。
私はバッチコードを書くのに助けが必要です。私はそれがnotepad.exe
ELSIF、その後taskkill /im notepad.exe
を実行している場合notepad.exe
は を実行しているかどうかを確認する必要がNotepad.exeが実行されていて、タスクが実行されていない場合は次の文に移動します
は、次のバッチのステートメント/コードに行く、その後実行されていません。
すべての場合にtaskkill /im notepad.exe
を実行するだけです。それが実行されていない場合、taskill
は殺すことが何もないと、ちょうど戻ってきます。
この場合、taskkill
はエラーを報告し、エラーレベルを設定します。あなたは、標準エラーをリダイレクトすることによって、エラーの報告を抑制することができます。
taskkill /im notepad.exe 2> nul
、あなたはちょうどそれを無視することができ、それはあなたが実行し、次のコマンドによってクリアされます。必要に応じて、clear it yourselfとすることもできます。
このアプローチは、私の考えでは、taskkill
が成功するかどうかを予測しようとするよりも優れています。すべての可能性のある障害モードを予測することはできません。また、taskkill
自体があなたが尋ねているチェックを実行しているので、そのチェックをtaskkill
に任せることもできます。
お試しくださいtaskkill /fi "IMAGENAME eq notepad.exe"
notepad.exeが見つからない場合は、エラーではなく情報のみが表示されます。
+1いいですね。エラーレベルをリセットする必要はありません。しかし、あなたの最終的な声明は誤解を招きます。エラーは実行を停止しません。実行はエラーに直面してプラグインするだけです。 –
修正済み、ありがとうございました! – tomdemuyt
質問者が探していた可能性があります** taskkill/im notepad.exe || exit/b ** – joojaa
エラーが発生しませんか?それは次の文を実行しないかもしれませんか? – Mowgli
エラーを報告します。そして私はそれを抑える方法を示します。しかし、それは次の声明を実行し続けます。これは、私たちが話しているバッチであり、実際のプログラミング言語ではないことを忘れないでください! ;-) –