在powershell中执行cmd命令

时间:2017-10-24 18:07:32

标签: powershell cmd

大家好我有这个说法我在ps中运行并且运行得很好

sc.exe \\localhost config serviceName obj= lab\user password= password type= own

然而,当尝试将其中的一部分分配给变量(见下文)时,cmd无法识别sc命令

(不工作)

$user     = "lab\user"
$password = "password"


$sc = "\\localhost config serviceName obj= {0} password= {1} type= own" -f $user, $password


sc.exe $sc

一如既往地欣赏帮助!!

2 个答案:

答案 0 :(得分:1)

请记住,PowerShell是一个可以运行命令的shell:您将命令放在行的开头,然后放置参数。如果任何参数来自变量,只需将它们放在那里。这就是你需要做的所有事情:

$user     = "lab\user"
$password = "password"

sc.exe \\localhost config aie-agent-service obj= $user password= $password type= own

我希望不言而喻,在任何类型的程序或脚本中嵌入密码都是一个坏主意。

答案 1 :(得分:-1)

您引用的.exe可能不在您的全局路径中,也不在您正在处理的目录中,因此只能通过拼写出名称来调用.exe。为了引用.exe,您需要点源"可执行文件,或将文件添加到路径或将文件放入路径中已有的文件夹中。您可以通过单击"我的电脑 - >来修改路径。属性 - >高级 - >环境变量 - >路径"并将路径添加到.exe。