2017-07-09 2 views
0

私はtimeout /t 60自動継続では遅延を取得する方法を、ユーザー入力にはset /p var="prompt"を取得する方法を知っていますが、両方を行う変更があります。何も入力しないと尋ねて、タイムアウトを続行しますか?私は、スクリプト設定を変更するために私のループスクリプトの設定画面の一種のためにそれを使用します。バッチ:入力を求めるプロンプトを表示し、タイムアウトすると続行するにはどうすればよいですか?

+0

どのくらいの入力が必要ですか? 1キー/チャー以上? – toschug

+0

キーがうまくいきます。 – bricktop

+2

1つのキーストローク選択コマンドにもタイムアウトオプションがあります。 'choice /?'を参照するか、http://ss64.com/nt/choice.htmlをご覧ください。タイムアウト時にデフォルトの回答を選択することができます。この[メニュー例]を参照してください(https://stackoverflow.com/a/44774287/6811411) – LotPings

答えて

2

choice /?を見てキーを要求し、タイムアウトで中止してください。例えば

CHOICE /T 10 /C YN /D Y 

は、そうでなければデフォルト(/ D)は、この例では(Yes)はYである、取られる、Y(はい)またはN(いいえ)のための10秒を待機します

結果を確認するには、%ERRORLEVEL%をチェックする必要があります。

@echo off 
cls 
CHOICE /T 5 /C YN /D Y 
set _e=%ERRORLEVEL% 
if %_e%==1 echo Y&goto :done 
if %_e%==2 echo N&goto :done 

echo Error 
echo %_e% 

:done 
+0

私は 'choice'を覚えていないと信じられません。私はこれまで数年前と同じように使いました。私はちょうどタイムアウトのようなカウントダウンを持っていて、これが完璧であること以外は、ありがとう!私はスクリプトがうまく動いています。 – bricktop

+0

あなたは、タイムアウトまで何秒間放置されているかをユーザーが確認できることを意味しますか? – toschug

+0

はい、私はそれについて考えると、スクリプトが何をしているのかを見るためにスクロールする方が簡単なので、この方が良いでしょう。 – bricktop

関連する問題