You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PowerShell中命令前的&符号(&)是什么作用?

PowerShell中命令前的&符号(&)是什么作用?

嘿,这个问题我之前也踩过坑,其实&在PowerShell里叫做调用运算符(Call Operator),核心作用就是给PowerShell发信号:把后面跟着的内容(不管是带空格的路径、存在变量里的命令,还是脚本块)当成可执行的命令来跑。

咱们结合你遇到的情况拆解一下:

  • 你用Tab补全带空格的程序路径时,PowerShell自动加上&和引号,是因为路径里有空格(比如Program Files),要是只给路径套引号,PowerShell会把它当成普通字符串,根本不会去执行这个程序。这时候&就像个“启动开关”,告诉PowerShell:“别把这个字符串当文本,去运行它!”
  • 你直接跑'C:\Program Files\KeePassXC\keepassxc-cli.exe' --help报错,就是因为PowerShell把带引号的路径当成了纯文本,后面的--help就成了莫名其妙的语法冗余。只要加上&写成& 'C:\Program Files\KeePassXC\keepassxc-cli.exe' --help,PowerShell就会正确识别:哦,我要启动这个exe,还要传--help参数。

顺便提下&的其他常用场景:

  • 执行路径里带空格/特殊字符的可执行文件
  • 执行存在变量里的命令(比如$myCmd = 'Get-ChildItem'; & $myCmd)
  • 执行脚本块(比如& { Write-Host "Hello, PowerShell!" })

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

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.23 14:07:29