web-dev-qa-db-ja.com

バッチファイルを一定時間一時停止する

可能性のある重複:
DOSバッチファイルでのスリープ
バッチスクリプトで待機する方法

バッチファイルで開始されるプログラムがあります。

最初のモジュールは初期化に10秒ほどかかり、2番目のモジュールが呼び出される前に15秒間「スリープ」する方法が必要ですが、「一時停止」のようなキーを押すようユーザーに要求したくない要求する。

だから、これは私が意味するものです:

echo %PATH%

pause 10

echo %PATH%

この例では、エコーの間隔を10秒にしたいです。これは可能ですか? 「ping 1.1.1.1」を使用したいくつかの例を見てきましたが、常に正しく動作するとは限りません。

11
mainstringargs
ping -n 11 -w 1000 127.0.0.1 > nul

更新

初心者の間違い。 Pingは、リクエストの前後に1000ミリ秒待機するのではなく、リクエストの間に待機します。したがって、10秒間待機するには、11のpingを実行して、10秒の「ギャップ」を1秒の間に行う必要があります。

17
GolezTrol

choiceが利用可能な場合、これを使用します:

choice /C X /T 10 /D X > nul

ここで、/T 10は遅延する秒数です。構文はWindowsのバージョンによって異なる可能性があるため、CHOICE /?を使用して確認してください。

13
schnaader