web-dev-qa-db-ja.com

バッチで「Enterを押して終了」する方法

プロジェクトをビルドするためにrakeを使用していますが、次のようなbuild.batファイルがあります。

@echo off
cls
rake

Build.batをダブルクリックすると、DOSウィンドウがポップアップ表示され、進行状況がすべて表示されますが、タスクが完了すると閉じます。ユーザーがログを表示できるようにConsole.ReadLineを実行する方法はありますか?

ありがとう。

更新しました:

私は以下を試しましたが、うまくいきませんでした。なぜかわからない。

@echo off
cls
rake
pause
55
Jeff

Microsoftのデフォルトのインタープリターは、EOFに達すると終了するような方法で実行されます。 rakeが別のバッチファイルである場合、コマンドインタープリターはそのファイルに切り替え、rakeの解釈が終了すると終了します。この書き込みを防ぐには:

@echo off
cls
call rake
pause

私見、呼び出し演算子は、インタープリターの別のインスタンスを起動し、それによって現在のインタープリターが別の入力ファイルに切り替えられないようにします。

74
Basilevs

一時停止が表示されます:

何かキーを押すと続行します 。 。 。

32
Steven Robbins

私の推測では、rakeはバッチプログラムです。 callなしで呼び出すと、制御はbuild.batに戻りません。試してください:

@echo off
cls
CALL rake
pause
6
Aaron Digulla
@echo off
echo somethink
echo Press enter to exit
set /p input=
3
MSTRmt

おっと...質問を誤解した...

一時停止は行く方法です

古い答え:

コマンドをパッチファイルにパイプすることができます...

試してみる

build.bat < responsefile.txt
0
Heiko Hatzfeld