在Powershell标签自动完成中更改过滤器方法

时间:2018-10-05 08:34:23

标签: powershell

当前在Powershell中,当我使用Tab键检查可能的完成选项时,它仅显示单词开头带有param文本的项目。

示例:给定项目

  • 程序文件
  • 本地程序
  • 另一个项目

何时

cd Pro [tab]

返回:

  • 程序文件

因此,它将以 Pro 开头的所有目录作为选项显示。但是我想改变这种行为,而不是前提是“开始于”,而是要“包含”。

在这种情况下,我的结果将是:

示例:给定项目

  • 程序文件
  • 本地程序
  • 另一个项目

何时

cd Pro [tab]

返回:

  • 程序文件
  • 本地程序

1 个答案:

答案 0 :(得分:0)

我不知道是否还有其他方法,但是我用TabExpansion解决了:

function TabExpansion($line, $lastWord) {
    if ($line.StartsWith("cd ")) {
        return Get-ChildItem -Name *$lastWord*
    }
}