使用PowerShell脚本

时间:2016-03-10 10:40:06

标签: powershell

我正在尝试使用变量在远程服务器上执行.cmd文件,但是我遇到了传递导致以下错误消息的变量的问题:

  

术语' D:\ MyDir \ MyFile.cmd myparam'不被识别为名称   cmdlet,函数,脚本文件或可操作程序。检查   拼写名称,或者如果包含路径,请验证路径   是正确的,然后再试一次。

当我尝试使用变量/参数执行.cmd时,才会出现此错误。

这是我的代码 -

param($InParam)
$Username = 'MYMACHINE\myuser'
$Password = 'mypassword'
$pass = ConvertTo-SecureString -AsPlainText $Password -Force
$Cred = New-Object System.Management.Automation.PSCredential -ArgumentList $Username,$pass
If ($InParam -eq "test")
{
$Script = {&"D:\MyDir\MyFile.cmd myparam"}
Invoke-Command -ComputerName MY-PC-NAME -Authentication Default -ScriptBlock $Script -Credential $Cred

非常感谢任何帮助和TIA!

1 个答案:

答案 0 :(得分:2)

问题是它正在寻找不存在的文件“MyFile.cmd myparam”。您需要移动引号,以便param位于单独的字符串中:

$Script = {&"D:\MyDir\MyFile.cmd" myparam}