我想知道是否有办法改变当前 powershell 自动完成的工作方式。我一直在使用 bash 并对其进行了更改,以提供一些我希望在我的 powershell 体验中使用的功能。
目前powershell,因为我正在编写一个带有文件夹的命令,它将选项卡自动完成并循环浏览我的文件夹。这是我喜欢的方式,但我想念的一个功能是使用命令的部分匹配并按下向上键,它会找到与我所做的其余部分匹配的命令。
所以我写'回声测试'然后我写其他命令并尝试'ec'并点击并且'回声测试'将完成而不是我输入的最后一个命令
只是想知道是否有办法让这个回来?
您可以PSReadLine为此使用(PowerShell 的受 bash 启发的 readline 实现):
PS读取行
此模块替换了 PowerShell.exe 中版本 3 及更高版本的命令行编辑体验。它提供:
- 语法着色
- 简单的语法错误通知
- 良好的多行体验(编辑和历史)
- 可定制的键绑定
- Cmd 和 emacs 模式(都还没有完全实现,但都可用)
- 许多配置选项
- Bash 样式补全(Cmd 模式下可选,Emacs 模式下默认)
- Bash/zsh 风格的交互式历史搜索 (CTRL-R)
- Emacs 猛拉/杀死环
- 基于 PowerShell 令牌的“单词”移动和杀死
- 撤销重做
- 自动保存历史记录,包括跨实时会话共享历史记录“菜单”完成(有点像 Intellisense,通过 Ctrl+Space 选择完成)
...
要设置您自己的自定义键绑定,请使用 cmdlet Set-PSReadlineKeyHandler。例如,为了获得更好的历史体验,请尝试:
Run Code Online (Sandbox Code Playgroud)Set-PSReadlineKeyHandler -Key UpArrow -Function HistorySearchBackward Set-PSReadlineKeyHandler -Key DownArrow -Function HistorySearchForward使用这些绑定,如果当前命令行为空白,向上箭头/向下箭头将像 PowerShell/cmd 一样工作。但是,如果您输入了一些文本,它将在历史记录中搜索以当前输入的文本开头的命令。
| 归档时间: |
|
| 查看次数: |
12595 次 |
| 最近记录: |