powershell:你必须在' - '运算符的右边提供一个值表达式

问题描述:

我试图获取远程计算机的域名。 以下是我正在使用的WMI查询。 如果我在本地运行此脚本,那么我正在获取域名。powershell:你必须在' - '运算符的右边提供一个值表达式

$domain= (gwmi WIN32_ComputerSystem).Domain 

,但如果我想使用下面的脚本来获得远程机器的细节。

$domain= (gwmi WIN32_ComputerSystem).Domain -ComputerName $machinename 

然后我得到这个错误。

你必须提供在右手侧的值表达式“ - ”操作

我不知道为什么那个特定的错误发生,我看到Unexpected token '-computername' in expression or statement这更有意义,但得到的答复是将ComputerName参数作为调用的一部分添加到cmdlet中:

$domain = (gwmi WIN32_ComputerSystem -ComputerName $machinename).Domain 
+1

在第2版中,您应该得到与OP相同的错误。 – PetSerAl

+2

在OP的例子中,'-ComputerName'可能被解释为一个辅助操作符(减号),命令名称为“Computername”(当然,这不是一个减法操作的有效值表达式) –

+0

感谢您的回答。我正在测试它。 – Ironic