是否可以禁用/删除以前的命令VS 代码终端默认终端的输出是电源外壳现在,如果我输入命令pwd
,dir
然后使用命令清除屏幕,cls
现在,如果我dir
再次输入命令,我将在终端中接收所有先前的命令输出,我该如何解决这个问题
第一个命令输出
PS C:\Users\sadam\Desktop> pwd
Path
----
C:\Users\sadam\Desktop
第二条命令输出
PS C:\Users\sadam\Desktop> whoami
root\sadam
第三条命令输出
PS C:\Users\sadam\Desktop> dir
Directory: C:\Users\sadam\Desktop
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 1/24/2022 8:53 PM 7.txt
d---- 10/22/2021 9:46 PM 8
d---- 11/16/2021 7:16 PM del
d---- 11/16/2021 8:52 PM pcl
d---- 1/9/2022 12:40 PM ssssss
-a--- 1/20/2022 6:41 PM 68 11.txt
使用 cls
命令
再次输入 dir
命令并接收先前命令的输出
PS C:\Users\sadam\Desktop>cls
PS C:\Users\sadam\Desktop>
PS C:\Users\sadam\Desktop> pwd
Path
----
C:\Users\sadam\Desktop
PS C:\Users\sadam\Desktop> whoami
root\sadam
PS C:\Users\sadam\Desktop> dir
Directory: C:\Users\sadam\Desktop
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 1/24/2022 8:53 PM 7.txt
d---- 10/22/2021 9:46 PM 8
d---- 11/16/2021 7:16 PM del
...
...
PS C:\Users\sadam\Desktop> dir
Directory: C:\Users\sadam\Desktop
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 1/24/2022 8:53 PM 7.txt
d---- 10/22/2021 9:46 PM 8
d---- 11/16/2021 7:16 PM del
答案1
此问题已在错误报告中描述
重新打开:vscode 终端不尊重 Windows 中的 cls 命令 #45137。
这份错误报告的标题是“重新打开”,因为微软每次报告该错误时都会将其关闭。显然,微软没有修复该错误的意图。
该错误似乎是cls
命令清除了屏幕,但没有清除终端的回滚缓冲区,过去的事件仍然存在并在完成任何滚动时被调用。
解决方案是使用 Ctrl+ K。这将清除 Visual Studio Code 控制台,而不是屏幕。
由于某些版本的 VSCode(1.29 及以上版本)缺少此快捷方式,因此需要按如下方式创建:
- 导航至菜单文件 > 首选项 > 键盘快捷键
- 寻找
workbench.action.terminal.clear
- 要更改其映射,请双击,然后在出现提示时按住 Ctrl并按下K。按Enter保存。
- 右击该条目并选择“更改 when 表达式”。输入
terminalFocus
后按Enter。 - 现在Ctrl+K已定义。
另一个解决方案是按
Ctrl+ Shift+P
并选择Terminal:clear
。
还有另一个 解决方案 是:
在 keybindings.json 中一起使用两个命令: Ctrl+K然后Ctrl+L
{ "key": "ctrl+k", "command": "workbench.action.terminal.sendSequence", "args": { "text": "cls \u000D" }, "when": "terminalFocus" }, { "key": "ctrl+l", "command": "workbench.action.terminal.clear", "when": "terminalFocus" }