我想知道是否有人注意到在 PowerShell 中安装 PSReadLine 模块似乎破坏了它必须允许我们在使用向上箭头查找并执行上一个命令(Windows 命令Prompt 也有这个能力)。
如果我们只是向上箭头并且不执行任何操作,向下箭头可以正常工作 - 但是如果我们向上箭头说 3 个命令并执行它,那么之后的向下箭头不会像我预期的那样产生命令 #2 和 #1,而是它就像我们已经在历史缓冲区的末尾一样。好像我们的“历史位置”在使用向上箭头执行上一个命令后不再保存。
通过一些测试,我设法将其追踪到 PSReadLine 作为罪魁祸首。当我从会话中删除此模块时,上述功能可以正常工作。
这在 Windows 10 v20H2、PSv5.1 上重现(以及许多其他操作系统版本一直追溯到 Win7 SP1,以及其他 PS 版本直至/包括 PSv7.1)。问题肯定似乎与模块有关。
通过搜索,我只找到了另一个提到这一点的线程:
...但没有解决方案。我有点惊讶没有更多关于这方面的内容。
有谁知道是什么原因造成的?我可以在 PSReadLine 中更改一些配置以恢复旧行为吗?
任何帮助深表感谢!