Batch file 批处理脚本编程——有没有办法更改要回显的行?
基本上,我有一个部分需要循环,直到用户提供有效的输入,但是如果他们持续提供无效的输入,而我只是不断要求设置/p MYVAR=“Selection?”它每次都在新行上打印,导致滚动 我宁愿做:Batch file 批处理脚本编程——有没有办法更改要回显的行?,batch-file,command,echo,goto,Batch File,Command,Echo,Goto,基本上,我有一个部分需要循环,直到用户提供有效的输入,但是如果他们持续提供无效的输入,而我只是不断要求设置/p MYVAR=“Selection?”它每次都在新行上打印,导致滚动 我宁愿做: :SELECTION SET /P MYVAR="Selection? " IF ERROR HERE ( //I realize this is pseudo code for the error check ECHO MAKE A VALID SELECTION... MOVE UP
:SELECTION
SET /P MYVAR="Selection? "
IF ERROR HERE ( //I realize this is pseudo code for the error check
ECHO MAKE A VALID SELECTION...
MOVE UP 2 ROWS?
GOTO :SELECTION
)
如果这是兼容终端,您可以执行以下操作:
ECHO <CSI>[2A
:SELECTION
SET /P MYVAR="Selection? "
IF ERROR HERE ( //I realize this is pseudo code for the error check
ECHO MAKE A VALID SELECTION...
MOVE UP 2 ROWS?
cls
GOTO :SELECTION
)
您可以使用
cls
清除屏幕并重新编写,如下所示:
ECHO <CSI>[2A
:SELECTION
SET /P MYVAR="Selection? "
IF ERROR HERE ( //I realize this is pseudo code for the error check
ECHO MAKE A VALID SELECTION...
MOVE UP 2 ROWS?
cls
GOTO :SELECTION
)
这样,如果用户输入无效,用户只会不断看到“选择”。这主意不错,但Windows不再支持这一点