无法运行存储在变量中的远程命令

时间:2018-06-27 09:08:39

标签: powershell variables arguments remote-access invoke-command

我正在尝试构建一个脚本来复制文件并在特定数量的服务器上执行它们。 为此,我需要运行一个远程命令。我将其存储在变量中。 我知道变量不能在远程会话中使用。除非您使用-ArgumentList参数。但这对我也不起作用。

这是代码和错误消息:

$CMD_AgentDirectory = "New-Item -Path 'C:\FlexAgent' -ItemType Directory"
Invoke-Command -ComputerName Server01 -ScriptBlock {
    Invoke-Expression $CMD_AgentDirectory
} -ArgumentList $CMD_AgentDirectory

错误消息:

Cannot bind argument to parameter 'Command' because it is null.
    + CategoryInfo          : InvalidData: (:) [Invoke-Expression], ParameterBindingValidationException
    + FullyQualifiedErrorId : ParameterArgumentValidationErrorNullNotAllowed,Microsoft.PowerShell.Commands.InvokeExpressionCommand
    + PSComputerName        : Server01

我在做什么错了?

0 个答案:

没有答案