Powershell中的清屏快捷键-Ctrl+L不可用

今天在虚拟机中用了下 powershell, 习惯性的 ctrl+l 清屏指令, 没想到居然可以. 印象中很清楚, 这个命令在 powershell 中是无效的, 因为在我常用的系统中就是这样的.

虽然很肯定, 但是还是实验了一下, 发现真的不可以.

于是开始折腾琢磨.

  1. 先网上搜一下, 没找到
  2. 对比吧, … 没啥信息. 知道唯一的信息是 - 虚拟机是新装的系统, 常用的系统是好久前装的, 然后升级上来的.

第一次尝试

后面想到了 win+x 中, 由于以前 powershell 打开速度特别慢, 所以就默认 命令提示符, 在 设置->个性化->任务栏 中可设置.

image-20201209210803798

设置好后, 按快捷键 win+x, i, 结果提示这个

image-20201209210854805

原因: 修改过 开始菜单 的位置, 现在的位置(D:\System\SysFolder\Programs\Windows PowerShell)

解决办法: 恢复呗, 改了也没啥用处.

修改/恢复 开始菜单默认位置

使用 软媒 PCMaster 软件套装中的 软媒设置大师 操作.

可操作的东东很多: 桌面, 文档 …

image-20201209211530479

image-20201209211936817

问题完美解决. 从这里也可以看出 win+x 中菜单项的实质

不过清屏指令还是没用

第二次尝试

研究下 powershell 版本看看.

  1. 异常 ps:
  2. 正常 ps:

全都一样

image-20201209212612454

第三次尝试

谷歌看看 powershell快捷键失效

微软提问试下 提问传送门 我的提问

哈哈哈, 官方的回复很快呀, 说让重装. 和我的大招不谋而合, 哈哈🤣

第四次尝试

重装试下

https://github.com/PowerShell/PowerShell/releases, 下载 msi 安装文件

最后的结果: 无效. 外装的powershell跟系统自带的还是有区别的.

第五次尝试

猜测是不是快捷键冲突呢, 虽然说不太可能. 但是要试一下啊.

Windows按钮->电源->按下shift键+点击重启, 进入安全模式

可是还是没用, 没办法, 继续向微软求助.

image-20201210111134469

微软的再次回复

image-20201211122219338

这个方法确实可行

image-20201211122300217

新问题 - 如何解决当前帐号的问题呢?

终于解决了, 参考我的提问中的答案

解决方法

修改注册表 计算机\HKEY_CURRENT_USER\Control Panel\Accessibility\Blind AccessOn 属性为 0 即可

image-20201211223031059

原理分析

powershell 启动时会检查是否正在使用 屏幕阅读器, 这里指的大概就是 屏幕讲述人 吧, 我是这么觉得的, 因为不知道还有啥, 所以绝得有Bug, 根本没正在用. 如果检测到正在使用, 则会 警告

警告: PowerShell 检测到你可能正在使用屏幕阅读器,并且已出于兼容性目的禁用 PSReadLine。如果要重新启用它,请运行 “Import-Module PSReadLine”。

我的电脑不知道什么时候有了这个东东, 一直没注意, 可能以前不知道区别吧. powershell中的代码 为什么我觉得有Bug呢? 因为屏幕阅读器根本没有运行呀, 我试了 三个系统, 都是一样的, 这样的检测 不准. 最好找到根本就是一个注册表键值. 为什么会这样我也不知道~~~

image-20201211223108812

参考网址:

https://docs.microsoft.com/zh-cn/windows/win32/api/winuser/nf-winuser-systemparametersinfoa

https://github.com/PowerShell/PowerShell

https://serverfault.com/questions/1014754/cause-of-warning-powershell-detected-that-you-might-be-using-a-screen-reader-an

https://github.com/PowerShell/PowerShell/issues/11751

https://stackoom.com/question/3ZZRu/Visual-Studio%E4%BB%A3%E7%A0%81-Ctrl-Backspace%E5%9C%A8Integrated-Terminal%E4%B8%AD%E4%B8%8D%E8%B5%B7%E4%BD%9C%E7%94%A8