ファイルの実行後にコンソールが自動的に閉じるのを防ぐために、バッチファイルの最後にどのコマンドを置くことができますか?
ファイルの実行後にコンソールが自動的に閉じるのを防ぐために、バッチファイルの最後にどのコマンドを置くことができますか?
回答:
Windows / DOSバッチファイル:
pause
これは素晴らしい"Press any key to continue . . . "
メッセージを出力します
または、"Press any key to continue . . ."
メッセージが必要ない場合は、代わりに次のようにします。
pause >nul
正確な質問によります!
通常pause
、.batファイル内でジョブを実行します。
あなたがしたい場合はcmd.exeのではない近くには、タイピング、使用のままにできるようにするにはcmd /k
、ファイルの末尾にコマンド。
cmd /k
代わりにコマンドの前に置きます。& cmd /k
動作しません。
cmd.exeを閉じずに、続けて入力できるようにするには、次を使用します。
cmd /k
何をするかを明確にする必要性を感じました/k
(Windows Webサイトから):
/k
:stringで指定されたコマンドを実行して続行します。
したがってcmd /k
、batファイルの最後にフォローアップコマンドがないと、cmd.exe
ウィンドウは開いたままになり、後で使用できます。
一方pause
、バッチファイルの最後では、プロセスを一時停止し、cmd.exe
最初のボタンを押すと終了します
コマンドをバッチファイルに含める以下の方法では、新しいコマンドプロンプトウィンドウが開き、新しいウィンドウは自動的に終了しません。
start "title" call abcd.exe param1 param2
start "title" call xyz.exe param1 param2
Mavenを使用していて、入力をスキップし、コンソールが閉じて結果を表示しないようにする場合はCALL
、「mvn clean install」だけでなく、スクリプトでコマンドを使用する必要があります。
このようにコンソールを閉じます
ECHO This is the wrong exemple
mvn clean install
pause
このようにコンソールは開いたままになります
ECHO This is the right exemple
CALL mvn clean install
pause
CALL
コマンドを使用しない場合、過去の例はどちらも機能しません。
call <myCommand>
この問題を解決:最初の実行後に私のプロンプト立ち止まっ閉鎖
cmd.exe
実行するコードの下に新しい行を追加します。
c:\Python27\python D:\code\simple_http_server.py
cmd.exe
python script.py %1 && cmd
私の方法は、実際のバッチ( "foo.bat"など)を記述してジョブを完了することです。次に、別の「start.bat」を作成します。
@echo off
cmd /k foo.bat
これは、1回限りの環境変数を設定するときに非常に便利です。
cmd /k
の最後に(コマンドなしで)置くだけfoo.bat
で実行できます。別のstart.bat
ファイルは必要ありません。
cmd
バッチファイルの最後に呼び出します。
可能性1:2つの.batファイルを作成し、最初のファイルに書き込むだけです。
start <filename> // name of 2nd batch file
exit
バッチファイル2は、最後に閉じないファイルです。したがって、バッチnr.1を開くと、2番目とクロー自体が開始されます。2番目が終了しても、完全に閉じません(最後に出口を配置しない限り)。
可能性2:バッチファイル1:
call <filename>
cls
echo End of file
pause
<any code you want>
2番目のファイルが終了すると、ファイル1に再び進み、残りのファイルを出力します。これにより、エラーハンドラーを作成することもできます。nr.1がクラッシュすると、nr.2に入り、それを表示します
この小さなハックは、ユーザーにキーを入力するように求め、それを変数%exitkey%に格納します(この変数は好きな名前にすることができます)。
set /p exitkey= "Press any key to continue..."
注意:「=」の後のスペースは非常に重要です
ユースケースによって2つの方法があります
1)Windows cmdプロンプトを開いたままにして、実行結果を確認して後で閉じることができるようにする場合。使用する
pause
2)Windows cmdプロンプトを開いたままにして、コマンドのあとにいくつかのコマンドを実行できるようにする場合。使用する
cmd
簡単です、バットの最後の行にcmdを追加してください。システムパスをリセットまたはクリアする場合は、次のようにフルパスでcmdを開始する必要があります。
%windir%\system32\cmd.exe
たとえば、jdkを次のように古いバージョンにリセットするbatファイルがあります。
PATH=C:\Program Files\Java\jdk1.6.0_45\bin;C:\apache-ant-1.7.1\bin
SET JAVA_HOME=C:\Program Files\Java\jdk1.6.0_45
%windir%\system32\cmd.exe
システムパスをリセットしたので、フルパスでcmdを実行する必要があります。そうしないと、システムがcmd.exeを見つけられず、cmdの実行に失敗し、ウィンドウを閉じるだけで、エラーメッセージが表示されません。 。