如何在 vbscript 中 运行 .sh 文件,或如何在 vbscript 中执行 shell 脚本?
How to run in vbscript an .sh file, or how to execute shell script in vbscript?
我正在尝试使用 shell 脚本创建 Windows 10 通知,我想用 vbscript 执行它,但它似乎只提示我在 Microsoft Store 中找到处理此问题的程序。
我尝试使用 vbscript 中的代码执行 .sh 文件,例如 WshShell.Run
。
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run "Notification.sh"
我有一个 Microsoft Store 对话框询问我如何 运行 .sh 文件,但我想 运行 它,但是没有可以处理它的系统程序,除了对于 Windows Shell 控制台。
WshShell.Run "powershell.exe -nologo -command C:\ShellFile.ps1"
有点晚了,但是-可以使用 WScript.Shell 的 运行 方法 ...
With CreateObject("WScript.Shell")
.run "cmd.exe /C ""c:\Program Files\Git\bin\sh.exe"" > c:\out.txt --login -i -c d:\yourfolder\bash.sh -R", 0, True
End With
' Read the output and remove the file when done...
Dim strOutput
With CreateObject("Scripting.FileSystemObject")
strOutput = .OpenTextFile("c:\out.txt").ReadAll()
.DeleteFile "c:\out.txt"
WScript.Echo strOutput
End With
所以,在这里你首先 运行 sh.exe 通过 cmd.exe 然后 sh.exe 运行s bash.sh 命令文件。我们还将控制台输出读入文件 (out.txt),然后将其读入变量以捕获输出。另请注意,我们可以通过使用 0 作为 run-method.
的第二个参数来隐藏 window 帧
也可以使用 exec-method 并将输出直接接收到变量中,但这样我们就无法隐藏 window ...
Dim objShell
Set objShell = WScript.CreateObject ("WScript.shell")
outVar = objShell.exec("cmd.exe /C ""c:\Program Files\Git\bin\sh.exe"" --login -i -c d:/yourfolder/bash.sh -R").stdout.readall
WScript.Echo outVar
Set objShell = Nothing
我正在尝试使用 shell 脚本创建 Windows 10 通知,我想用 vbscript 执行它,但它似乎只提示我在 Microsoft Store 中找到处理此问题的程序。
我尝试使用 vbscript 中的代码执行 .sh 文件,例如 WshShell.Run
。
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run "Notification.sh"
我有一个 Microsoft Store 对话框询问我如何 运行 .sh 文件,但我想 运行 它,但是没有可以处理它的系统程序,除了对于 Windows Shell 控制台。
WshShell.Run "powershell.exe -nologo -command C:\ShellFile.ps1"
有点晚了,但是-可以使用 WScript.Shell 的 运行 方法 ...
With CreateObject("WScript.Shell")
.run "cmd.exe /C ""c:\Program Files\Git\bin\sh.exe"" > c:\out.txt --login -i -c d:\yourfolder\bash.sh -R", 0, True
End With
' Read the output and remove the file when done...
Dim strOutput
With CreateObject("Scripting.FileSystemObject")
strOutput = .OpenTextFile("c:\out.txt").ReadAll()
.DeleteFile "c:\out.txt"
WScript.Echo strOutput
End With
所以,在这里你首先 运行 sh.exe 通过 cmd.exe 然后 sh.exe 运行s bash.sh 命令文件。我们还将控制台输出读入文件 (out.txt),然后将其读入变量以捕获输出。另请注意,我们可以通过使用 0 作为 run-method.
的第二个参数来隐藏 window 帧也可以使用 exec-method 并将输出直接接收到变量中,但这样我们就无法隐藏 window ...
Dim objShell
Set objShell = WScript.CreateObject ("WScript.shell")
outVar = objShell.exec("cmd.exe /C ""c:\Program Files\Git\bin\sh.exe"" --login -i -c d:/yourfolder/bash.sh -R").stdout.readall
WScript.Echo outVar
Set objShell = Nothing