是否有一个功能可以清除命令提示符中的最后一行?我的意思不是“cls”——它清除了整个屏幕,我只想删除最后一行。
例如,我正在文件夹及其子文件夹中搜索文件,并且我想打印到 cmd 当前文件夹 - 但我想在文件夹更改时重写它,而不仅仅是追加到末尾。我知道,这只是一种平庸,但我很感兴趣如何做到这一点。
是否有一个功能可以清除命令提示符中的最后一行?我的意思不是“cls”——它清除了整个屏幕,我只想删除最后一行。
例如,我正在文件夹及其子文件夹中搜索文件,并且我想打印到 cmd 当前文件夹 - 但我想在文件夹更改时重写它,而不仅仅是追加到末尾。我知道,这只是一种平庸,但我很感兴趣如何做到这一点。
最后一行是哪一行?
提示上方的那个?
如果这就是你的意思,那么不,没有办法使用提示来清除它。如果您正在谈论以编程方式执行此操作,请尝试"\r"
像这样使用:
print("\rNew text in the line");
如果您使用的是 ANSI 屏幕驱动程序,您可以简单地输出 "\r",您的新行,然后输出 'ESC'、'['、'K',这将清除到行尾。
但是需要注意的一件事是,您应该将输出长度限制为预期的屏幕宽度,这样行就不会换行,例如
c:\directory\really_big_name_too_long_..._so_Ive_put_some_ellipses_in.txt
在这种情况下,您可以以任何方式将所有内容填充到 79 个字符,并且它只使用“\r”字符,独立于 ANSI 驱动程序。
您在寻找 Ctl-c 吗?
您可以使用括号记录前一个,然后不记录您要使用 TYPE 命令删除的行:(这只是一个示例)
(
echo (Previous Outputs)
(This may happen as many times as needed)
) >> C:\file.txt
set /P thing=
cls
type C:\file.txt
pause
不,没有命令可以执行此操作