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

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

我正在通过输入路径来尝试执行一个命令,当我点击时TAB,发生了以下情况:

C:\> C:\Program Files\KeePassXC\keepass<TAB>
# became this:
C:\> & 'C:\Program Files\KeePassXC\keepassxc-cli.exe'

它只是评估一个字符串吗?至少,我假设路径需要用引号引起来,因为其中有空格,如果没有,&我会收到以下错误:

C:\> 'C:\Program Files\KeePassXC\keepassxc-cli.exe' --help

At line:1 char:50
+ 'C:\Program Files\KeePassXC\keepassxc-cli.exe' --help
+                                                  ~~~~
Unexpected token 'help' in expression or statement.
At line:1 char:1
+ 'C:\Program Files\KeePassXC\keepassxc-cli.exe' --help
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The '--' operator works only on variables or on properties.
    + CategoryInfo          : ParserError: (:) [], ParentContainsErrorRecordException
    + FullyQualifiedErrorId : UnexpectedToken

你能链接到文档吗?谢谢!


讨论的主题&12)完全是关于其他东西的(或者我错过了找到联系)。

答案1

这是一个调用操作符致电接线员 &

您可以使用调用运算符通过文件名执行脚本。下面的示例显示了一个包含空格的脚本文件名。当您尝试执行该脚本时,PowerShell 会显示包含文件名的带引号的字符串的内容。调用运算符允许您执行包含文件名的字符串的内容。

PS C:\Scripts> ".\script name with spaces.ps1"
.\script name with spaces.ps1

PS C:\Scripts> & ".\script name with spaces.ps1"
Hello World!

相关内容