2016-02-17 2 views
1

У меня есть требование запуска скрипта powershell в бесшумном режиме через vbscript (cscript.exe).
Powershell написать в консоль vbscript (cscript.exe)

Основные шаги для сценария следующие.

VBScript

WScript.StdOut.WriteLine "Welcome..." 
WScript.StdOut.WriteLine "First Step..." 
WScript.Sleep Int(2000) 
Set objShell = CreateObject("Wscript.Shell"): objShell.Run "powershell -nologo -file D:\basic\child.ps1" ,0,true 
WScript.StdOut.WriteLine "Script Completed." 
WScript.Sleep Int(5000) 

скрипт PowerShell

Write-Host "Some Text Printed" 
Start-Sleep -s 2 

Atthis точки, мне нравится сценарий Powershell, чтобы писать на VBScript (cscript.exe) консоли.

Я запускаю скрипт vb, как следует.

cscript d:\basic\script.vbs 

Есть ли какая-либо работа для этого требования.

+0

Возможный дубликат [я должен выполнить командную строку в Visual Basic Script] (http://stackoverflow.com/questions/11501044/i-need-execute-a-command-line-in-a-visual-basic-script) –

ответ

0

Как объяснено в ответе на вопрос, который я связан как возможный дубликат, вы можете сделать что-то вроде этого:

WScript.StdOut.WriteLine "Welcome..." 
WScript.StdOut.WriteLine "First Step..." 
WScript.Sleep Int(2000) 
res = getCommandOutput("powershell -nologo -file D:\basic\child.ps1") 
WScript.StdOut.Write res 
WScript.StdOut.WriteLine "Script Completed." 
WScript.Sleep Int(5000) 

Function getCommandOutput(theCommand) 

    Dim objShell, objCmdExec 
    Set objShell = CreateObject("WScript.Shell") 
    Set objCmdExec = objshell.exec(thecommand) 
    getCommandOutput = objCmdExec.StdOut.ReadAll 

end Function 
Смежные вопросы