PowerShell 入门1:重新认识代码输入与自动补全功能

⚡ PowerShell 入门:重新认识代码输入与自动补全功能


🖥 前言

在命令行中输入命令时,速度准确度 是效率的关键。PowerShell 不仅支持对象管道,还自带了智能自动补全机制,让我们在不记住全部命令的情况下,依然能快速完成操作。

本篇将带你深入理解 TabShift + Tab 的用法,并通过动图和示例演示它们在实际工作中的高效性。


✍ 一、Tab 补全机制简介

PowerShell 的 Tab 补全功能比 CMD 更强大,支持:

  • 命令名 补全
  • 参数名 补全
  • 文件/目录路径 补全
  • 模块名 补全
  • 变量名 补全

💡 反向补全技巧
在候选列表中按 Shift + Tab反向循环浏览匹配项,这在候选项很多时特别方便。


🔍 二、命令自动补全案例

▶ 示例 1:命令名补全(正向 / 反向)

Get-A
  • Tab:依次补全 Get-AliasGet-AppxPackageGet-AuthenticodeSignature
  • Shift + Tab:从列表末尾反向补全回去

▶ 示例 2:路径补全

Dir C:\
  • Tab:循环显示当前目录下的文件和文件夹
  • Shift + Tab:反向浏览目录项

⚙ 三、命令参数自动补全

参数补全是 PowerShell 最实用的功能之一,特别是在记不清完整参数名时。

▶ 示例 3:参数名补全

Set-ExecutionPolicy 
  • 输入空格和 - 后按 Tab:显示所有可用参数,如 -ExecutionPolicy-Scope-Force
  • 输入 -E 再按 Tab:直接跳到以 E 开头的参数

🔧 四、进阶玩法:自定义补全规则

如果你想让 Tab 补全自己的命令或参数,可以使用 Register-ArgumentCompleter

示例:为 ping 命令自定义 IP 补全

Register-ArgumentCompleter -CommandName ping -ParameterName Target -ScriptBlock {
    param($commandName, $parameterName, $wordToComplete)
    '192.168.0.1','8.8.8.8','localhost' |
        Where-Object { $_ -like "$wordToComplete*" } |
        ForEach-Object { [System.Management.Automation.CompletionResult]::new($_) }
}

执行:

ping <Tab>

即可在 3 个常用目标之间补全选择。


📚 五、常用补全快捷键速查表

功能快捷键描述
命令正向补全Tab循环正向补全命令、路径、变量
命令反向补全Shift + Tab在补全候选列表中反向循环
参数自动补全- + Tab显示当前命令支持的所有参数
参数首字母补全-E + Tab按首字母过滤参数
自定义补全Register-ArgumentCompleter扩展补全范围为自定义命令或参数

📝 六、总结

  • TabShift + Tab 能极大提升 PowerShell 输入效率
  • 参数首字母 + Tab 是快速定位的利器
  • Register-ArgumentCompleter 可以把补全功能扩展到自定义脚本

📢 互动讨论
你在 PowerShell 中用过最奇特的 Tab 补全用途是什么?欢迎在评论区分享。


🔗 参考资料


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

杨利杰YJlio

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值