Quantcast
Viewing all articles
Browse latest Browse all 928429

Командная строка, батники, сценарии (bat, cmd) (2684) / И все с этим связанное... (5)

A27:
Следующий батник и/или choice.exe ведёт себя не совсем корректно. При запуске он ждёт нажатия клавиш (A, B, Q), если они не были нажаты, то choice.exe по истечении пяти секунд выбирает вариант по умолчанию, а если нажать A или B, то при следующем вызове choice.exe, вариант по умолчанию автоматически уже не выбирается.
Если из батника исключить строчку с циклом for, то автоматический выбор срабатывает корректно. Либо если изменить строку "Set /p ..." так, чтобы запись в файл была указана в начале строки (>Saved.txt Set /p "С=%A% %B%"<NUL), то автоматический выбор тоже начинает корректно срабатывать.

Вопрос: Как и почему это всё связано между собой?


Код:
@Echo Off
Set A=0
Set B=0
If exist Saved.txt For /f "Tokens=1,2" %%A in (Saved.txt) do Set "A=%%A" & Set B=%%B
:Show
Cls
Echo.A: %A%
Echo.B: %B%
Echo.
Echo.[A] A+1
Echo.[B] B+1
Echo.[Q] Quit
Echo.
Choice.exe /N /C ABQ /D Q /T 5 >NUL
If ErrorLevel 3 Goto Quit
If ErrorLevel 2 Set /a "B+=1" & Goto Save
Set /a A+=1
:Save
Set /p "С=%A% %B%"<NUL>Saved.txt
Goto Show
:Quit

Viewing all articles
Browse latest Browse all 928429

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>