CMD随时按键触发X

  • 本文关键字:CMD batch-file cmd
  • 更新时间 :
  • 英文 :


可以让这样的脚本运行:

@echo off & cls
:setnum
set /p %ynum%=Pick a Number: 
:start
echo This is your number: %ynum%
timeout /t 1 /nobreak > NUL
goto start

此脚本应一直列出%ynum%,直到我关闭它。是否有某种方法可以一直扫描用户输入,如果用户按下"任何键"或定义的键,然后goto setnum?

CMD或不可能?

这是可能的吗?

br

这将无限地循环直到1.)键入秘密阶段或2。

它还显示了每次迭代的当前时间。它显示了您以前经历了多少迭代/循环。第三行是"秘密断开"短语 - 随时更改。

将其放入批处理文件中:

@echo off
setlocal EnableDelayedExpansion
set "zLoopCounter=0"
set "zTestInput="
set "zLoopBreak=secr3tKey"
:zTimeWarp
cls
set "zTime=!time!"
if !zLoopCounter! GTR 0 echo ;[i] You're In A Loop.  You Pressed "!zTestInput!".  You've Been Here !zLoopCounter! Time^(s^) Before.
set /p zTestInput=[CurrTime !zTime!] Pick A Number:
if "!zTestInput!"=="!zLoopBreak!" (
    echo ;[i] You Left The Loop!
) else (
    set /a zLoopCounter+=1 >nul
    goto :zTimeWarp
)

输出:

;[i] You're In A Loop.  You Pressed "6".  You've Been Here 1 Time(s) Before.
[CurrTime 20:12:18.21] Pick A Number:
;[i] You're In A Loop.  You Pressed "98426".  You've Been Here 2 Time(s) Before.
[CurrTime 20:13:13.74] Pick A Number:
;[i] You're In A Loop.  You Pressed "22.2".  You've Been Here 3 Time(s) Before.
[CurrTime 20:16:31.21] Pick A Number:
;[i] You're In A Loop.  You Pressed "12344".  You've Been Here 4 Time(s) Before.
[CurrTime 20:16:49.28] Pick A Number:
;[i] You Left The Loop

相关内容

  • 没有找到相关文章

最新更新