You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

关于Windows Terminal中PowerShell Core历史搜索功能的名称与全局启用方法咨询

Windows Terminal中PowerShell Core历史搜索功能的名称与全局启用方法

嘿,你说的这个能实时匹配并显示历史命令的实用功能我太熟啦!它其实是PowerShell Core内置的PSReadLine模块提供的,分两种对应场景的称呼:

  • 如果你是不小心按到快捷键(比如Ctrl+R)后,输入关键词就能实时过滤历史命令,那它叫增量历史搜索(Incremental History Search),反向搜索(从最近历史往前找)用Ctrl+R,正向搜索(从最早历史往后找)用Ctrl+S
  • 要是你输入命令时,它自动弹出匹配的历史列表,那就是预测IntelliSense(Predictive IntelliSense),是更直观的主动提示模式。

不管是哪一种,要让它在所有Windows Terminal的PowerShell窗口里永久生效,只要修改PowerShell的配置文件就行,步骤超简单:

  1. 打开PowerShell配置文件:
    在PowerShell里输入命令 notepad $PROFILE,如果系统提示文件不存在,就先输入 New-Item -Path $PROFILE -ItemType File -Force 创建一个。

  2. 根据你需要的功能添加配置:

    • 要是想启用自动弹出历史匹配列表(预测IntelliSense),就把这两行粘贴进去:
      Set-PSReadLineOption -PredictionSource History
      Set-PSReadLineOption -PredictionViewStyle ListView
      
      第一行指定用本地命令历史作为预测来源,第二行设置匹配结果以列表形式显示在光标下方。
    • 要是想确保快捷键触发的增量历史搜索每次都能用(其实默认就支持,但可以手动绑定确认),就添加这两行:
      Set-PSReadLineKeyHandler -Key Ctrl+R -Function ReverseSearchHistory
      Set-PSReadLineKeyHandler -Key Ctrl+S -Function ForwardSearchHistory
      
  3. 保存配置文件,重启Windows Terminal的PowerShell窗口,以后每次打开新终端,这个功能就自动生效啦!

备注:内容来源于stack exchange,提问作者Tim

火山引擎 最新活动