【bat】バッチでsleepコマンドを使用して数秒待つ!失敗する人必見

目の痙攣に悩む人

batsleepコマンドを使用して、ミリ秒単位で処理を止めたい時もあると思います。

今回はsleepコマンドを使用して、batの処理を数秒止めて再開させたいと思います。

またsleepコマンドを使用しても想定通りの動きをしない場合の対処法も教えます。

windowsのプロンプトで使用できるbatやpythonやphpを使用して、業務効率化やWebサイトを作成しております。javaやシェルスクリプトなど、様々なプログラミングを行った実績ありの筆者です。

目次

bat(バッチ)でsleepコマンドのやり方

batを教えます

batでのsleepコマンドは処理を決めた秒数だけ一時停止する効果があります。

基礎構文を下に教示します。

sleep 秒数

これを入れるだけでbat処理を秒数だけ一時停止する事が可能です。

bat(バッチ)のsleepコマンドと同じ動きをするコマンド

しかしsleepコマンドはwindowsの環境などで動かない場合が存在します。

そういった場合には「timeout」コマンドを使用すれば同じ効果が得られます。

timeout /t 秒数

timeoutコマンドのその他のオプションなどは以下の記事でまとめています。

bat(バッチ)でsleepコマンドが動かない時の対処法

エラー対処法

しかしsleepコマンドもtimeoutコマンドもwindowsの環境などで動かない場合が存在します。

そんな時の対処法を教えます。

「powershell sleep」コマンドを使用すれば可能です。

powershellとはwindowsのbatの拡張版のようなものです。

powershell sleep 秒数

これなら確実に動きますので、「powershell sleep」のコマンドを推奨します。

bat(バッチ)のsleepでミリ秒を指定する方法

batsleepミリ秒を指定したい時もあると思います。

そんな時は以下の様に記述してください。

powershell sleep 0.001

これでミリ秒単位でbat処理を一時停止する事が可能です。

実践:batのsleepで処理を止める

training

では実際にbatのsleepを使用してみます。

sleepを使用したbatファイル説明

@echo off

echo ①この行が最初の行です!
powershell sleep 5
echo ②この行が最後の行です!

pause

「@echo off」はbatファイルの1行目に記述するおまじないだと思ってください。

最初の文字列を表示してから「powershell speep」コマンドで5秒待ってから最終行の文字列を表示します。

最後のpauseコマンドはechoなどを使用した時に、確認が便利になるコマンドです。

sleepを使用したbatファイルを実行した結果

ではこのbatファイルを実行してみます。

①この行が最初の行です!

最初の文字列が表示されます。

5秒間待ちが発生します。

①この行が最初の行です!
②この行が最後の行です!
続行するには何かキーを押してください . . .

5秒後に最後の文字列が表示されました。

まとめ:bat(バッチ)でsleepコマンドのやり方

batを教えます

batsleepを使用すれば処理を指定した時間だけ止める事ができる。

sleepのコマンドは以下です。

sleep 秒数

その他のコマンドでsleepと同じ効果のあるコマンドはtimeoutで構文は以下です。

timeout /t 秒数

環境によってはsleepもtimeoutも動かない時があるので、powershellコマンドを使用するのが推奨です。

powershell sleep 秒数

秒数の箇所はミリ秒単位でも指定可能。1ミリ秒を指定する時のやり方です。

powershell sleep 0.001
目の痙攣に悩む人

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次