首页 > 解决方案 > 在powershell选项卡自动完成中更改过滤器方法

问题描述

目前在 Powershell 中,当我使用选项卡检查可能的完成选项时,它只显示在单词开头具有参数文本的项目。

示例:给定项目

什么时候

cd Pro [tab]

回报:

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

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

示例:给定项目

什么时候

cd Pro [tab]

回报:

标签: powershell

解决方案


我不知道是否有另一种方法,我会这么说,但我用TabExpansion解决了它:

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

推荐阅读