目前,以下是启动VMware vSphere PowerCLI命令提示符的路径。我希望使用批处理文件自动运行sample.ps1
脚本。如何将sample.ps1
纳入此路径并创建批处理文件?
C:\WINDOWS\system32\WindowsPowerShell\v1.0\powershell.exe -psc "C:\Program Files\VMware\Infrastructure\vSphere PowerCLI\vim.psc1" -noe -c ". \"C:\Program Files\VMware\Infrastructure\vSphere PowerCLI\Scripts\Initialize-PowerCLIEnvironment.ps1\""
答案 0 :(得分:3)
如果您使用的是PowerShell 2.0,则可以使用PowerShell.exe的-file
参数
C:\WINDOWS\system32\WindowsPowerShell\v1.0\powershell.exe -psc "C:\Program Files\VMware\Infrastructure\vSphere PowerCLI\vim.psc1" -noe -file "C:\Program Files\VMware\Infrastructure\vSphere PowerCLI\Scripts\Initialize-PowerCLIEnvironment.ps1"
如果您使用的是PowerShell 1.0,则可以使用-command参数
C:\WINDOWS\system32\WindowsPowerShell\v1.0\powershell.exe -psc "C:\Program Files\VMware\Infrastructure\vSphere PowerCLI\vim.psc1" -noe -command "& 'C:\Program Files\VMware\Infrastructure\vSphere PowerCLI\Scripts\Initialize-PowerCLIEnvironment.ps1'"
答案 1 :(得分:1)
echo off
Title,Report Script &color 9e
for /f "usebackq delims=$" %%a in (`cd`) do (
set SCRIPTDIR=%%a
)
(Set ScriptFile=%SCRIPTDIR%\Report.ps1)
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -psc "C:\Program Files\VMware\Infrastructure\vSphere PowerCLI\vim.psc1" -c ". \"C:\Program Files\VMware\Infrastructure\vSphere PowerCLI\Scripts\Initialize-PowerCLIEnvironment.ps1\";%ScriptFile%"
答案 2 :(得分:0)
您可以通过调用bat文件(如ps1),通过.bat文件启动任意.ps1脚本。然后批量提取文件名,并用它调用powershell。
对于即用型解决方案,请使用以下要点:https://gist.github.com/JonasGroeger/10417237
答案 3 :(得分:0)
我在另一个页面中看到了这个代码,我在W2012 R2中对它进行测试并运行。
我希望它有效:
C:\>powershell "C:\>1\file.ps1"