如何使用清除屏幕CLS命令行只清除上面两行?

时间:2017-08-31 10:50:14

标签: batch-file cmd cls

我正在运行以下行,

@echo off
echo hi
echo hello
echo bye
pause
cls
echo welcome
echo once again
pause

输出,

hi
hello
bye
press any key to continue...
按下键后输出

welcome
once again
press any key to continue...

按下键后的预期输出

Hi
Welcome
once again
press any key to continue...

意思是,我的需求不包括嗨。我需要的是如何只清除两行以上,而不是使用cls清除整个屏幕。只需要你好再见(两行以上)需要清除而不是清除整个屏幕。

这不是原始程序,它只是用于解释和示例来向我展示我的概念和需求。我希望我能让你了解我的prblm ..请帮助

1 个答案:

答案 0 :(得分:0)

普通批次不支持此功能。

除了最近重新引入Ansi Escape Sequences的Windows 10版本 感谢Stephan的链接。

:: Q:\Test\2017\08\31\SO_45979664.cmd
:: 
@echo off
echo hi
echo hello
echo bye
pause
Echo esc[3Fesc[2Kesc[2Kwelcome
echo once again
pause

上面文本中的 esc 必须用Ctrl-Z字符替换(在这里丢失粘贴)。

这取决于您的编辑器如何输入ESC / Ctrl-Z / 027 / 0x1b,
在Notepad ++中,例如 Alt + 027
在Textpad Ctrl + *(小键盘) z

  • esc [3F转到第一列,3行(包括暂停消息)
  • esc [2K删除一行
相关问题