Answers:
您可以使用PSReadLine
(针对PowerShell的bash启发的readline实现):
PSReadLine
此模块取代了PowerShell.exe中版本3及更高版本的命令行编辑体验。它提供:
- 语法着色
- 简单的语法错误通知
- 良好的多线体验(编辑和历史)
- 可自定义的键绑定
- Cmd和emacs模式(既未完全实现,但两者都可用)
- 许多配置选项
- Bash样式完成(在Cmd模式下可选,在Emacs模式下默认)
- Bash / zsh风格的交互式历史搜索(CTRL-R)
- Emacs猛拉/杀死戒指
- 基于PowerShell令牌的“单词”运动和杀戮
- 撤销重做
- 自动保存历史记录,包括在实时会话中共享历史记录“菜单”完成(有点像智能感知,通过箭头选择完成)通过Ctrl + Space
...
要设置自己的自定义键绑定,请使用cmdlet Set-PSReadlineKeyHandler。例如,要获得更好的历史记录体验,请尝试:
Set-PSReadlineKeyHandler -Key UpArrow -Function HistorySearchBackward Set-PSReadlineKeyHandler -Key DownArrow -Function HistorySearchForward
使用这些绑定,如果当前命令行为空,则向上箭头/向下箭头将像PowerShell / cmd一样工作。如果您输入了一些文本,它将在历史记录中搜索以当前输入文本开头的命令。
C:\Users\[User]\Documents\WindowsPowerShell\profile.ps1
。参见自述