使用命令作为参数从vbs运行Powershell

时间:2012-07-12 09:01:55

标签: powershell vbscript

嘿,我想从一个vbs脚本运行一个powershell突击队。像启动powershell.exe之类的东西,输入一个特定的命令,如Restart-Service。我认为类似的东西可以起作用:

strCommand = "C:\WINDOWS\system32\WindowsPowerShell\v1.0\powershell.exe -command Restart-Service [service name]"

    Set WshShell = WScript.CreateObject("WScript.Shell") 
    Set objExec = WshShell.Exec(strCommand)

有人知道我该如何管理这个?

4 个答案:

答案 0 :(得分:3)

试试这个:

powershell -command '& {command to run}'

/ G

答案 1 :(得分:2)

1)将您的powershell命令存储为powershell脚本 2)使用vbs运行powershell

  Set objShell = CreateObject("Wscript.Shell")
 objShell.Run("powershell.exe -noexit c:\scripts\test.ps1")

答案 2 :(得分:1)

您可以使用最短的版本。

CreateObject("Wscript.Shell").Run ("powershell.exe -noexit $c= 'lola'; write-host $c -ForegroundColor green")

答案 3 :(得分:0)

试试这个:

Set objShell = CreateObject("Wscript.Shell")
objShell.Run("powershell.exe -noexit .\c:\scripts\test.ps1")

或者将文件保存在PS exe所在的文件夹中,然后

Objshell.Run("powershell.exe -noexit .\test.ps1")