【问题标题】:Batch Show a text or a line under a set批量显示集合下的文本或行
【发布时间】:2013-07-18 17:06:18
【问题描述】:
这是我搜索了很长时间的东西,甚至从未找到另一个问同样问题的东西!
是否可以有一个带有文本的变量输入!
因为,在代码中,下面的文本仅在输入结束时显示。
基本上,我想做这样的事情:
######################
INPUT (the set /p cmd)
######################
我想要的是让 set 命令下的行可见
【问题讨论】:
标签:
text
input
batch-file
set
visible
【解决方案1】:
不!
纯批处理是不可能的。
原因很简单,
由于无法使用光标向上移动,因此只能返回同一行(使用CR 或BACKSPACE 字符)。
只有CLS可以把光标拉起来,然后屏幕又是空的。
我知道两个可以排队的命令,但我不知道如何从批处理文件中使用它们。
set 和 cmd 在双线程命令窗口中。
@echo off
if "%~1"=="intern" (
prompt %2$G
call %2
exit
)
start /b "" "%~f0" intern :thread2
:thread1
prompt :thread1$G
call :cls
echo Use ESC to go up lines
for /L %%n in (1 1 10) DO (
ping localhost -n 2 > nul
echo( %%n
)
exit /b
:thread2
set /p var=Press ESC ... NOW!
exit /b
但是有很多外部工具可以设置光标位置(CursorPos.exe from Aacini)