Powershell中的清屏快捷键-Ctrl+L不可用
今天在虚拟机中用了下 powershell, 习惯性的 ctrl+l 清屏指令, 没想到居然可以. 印象中很清楚, 这个命令在 powershell 中是无效的, 因为在我常用的系统中就是这样的.
虽然很肯定, 但是还是实验了一下, 发现真的不可以.
于是开始折腾琢磨.
- 先网上搜一下, 没找到
- 对比吧, … 没啥信息. 知道唯一的信息是 - 虚拟机是新装的系统, 常用的系统是好久前装的, 然后升级上来的.
第一次尝试
后面想到了 win+x 中, 由于以前 powershell 打开速度特别慢, 所以就默认 命令提示符, 在 设置->个性化->任务栏 中可设置.

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

原因: 修改过 开始菜单 的位置, 现在的位置(D:\System\SysFolder\Programs\Windows PowerShell)
解决办法: 恢复呗, 改了也没啥用处.
修改/恢复 开始菜单默认位置
使用 软媒 PCMaster 软件套装中的 软媒设置大师 操作.
可操作的东东很多: 桌面, 文档 …


问题完美解决. 从这里也可以看出 win+x 中菜单项的实质
不过清屏指令还是没用
第二次尝试
研究下 powershell 版本看看.
- 异常 ps:
- 正常 ps:
全都一样

第三次尝试
谷歌看看 powershell快捷键失效
哈哈哈, 官方的回复很快呀, 说让重装. 和我的大招不谋而合, 哈哈🤣
第四次尝试
重装试下
https://github.com/PowerShell/PowerShell/releases, 下载 msi 安装文件
最后的结果: 无效. 外装的powershell跟系统自带的还是有区别的.
第五次尝试
猜测是不是快捷键冲突呢, 虽然说不太可能. 但是要试一下啊.
点 Windows按钮->电源->按下shift键+点击重启, 进入安全模式
可是还是没用, 没办法, 继续向微软求助.

微软的再次回复

这个方法确实可行

新问题 - 如何解决当前帐号的问题呢?
终于解决了, 参考我的提问中的答案
解决方法
修改注册表 计算机\HKEY_CURRENT_USER\Control Panel\Accessibility\Blind Access 的 On 属性为 0 即可

原理分析
powershell 启动时会检查是否正在使用 屏幕阅读器, 这里指的大概就是 屏幕讲述人 吧, 我是这么觉得的, 因为不知道还有啥, 所以绝得有Bug, 根本没正在用. 如果检测到正在使用, 则会 警告
警告: PowerShell 检测到你可能正在使用屏幕阅读器,并且已出于兼容性目的禁用 PSReadLine。如果要重新启用它,请运行 “Import-Module PSReadLine”。
我的电脑不知道什么时候有了这个东东, 一直没注意, 可能以前不知道区别吧. powershell中的代码 为什么我觉得有Bug呢? 因为屏幕阅读器根本没有运行呀, 我试了 三个系统, 都是一样的, 这样的检测 不准. 最好找到根本就是一个注册表键值. 为什么会这样我也不知道~~~

参考网址:
https://docs.microsoft.com/zh-cn/windows/win32/api/winuser/nf-winuser-systemparametersinfoa
https://github.com/PowerShell/PowerShell