-WindowStyle Hidden 的答案很好,但窗口仍然会闪烁。
通过cmd /c start /min "" 调用它时,我从未见过窗口闪烁。
您的机器或设置可能不同,但对我来说效果很好。
1。调用文件
cmd /c start /min "" powershell -WindowStyle Hidden -ExecutionPolicy Bypass -File "C:\Users\username\Desktop\test.ps1"
2。调用带参数的文件
cmd /c start /min "" powershell -WindowStyle Hidden -ExecutionPolicy Bypass -Command ". 'C:\Users\username\Desktop\test me.ps1' -Arg1 'Hello' -Arg2 'World'"ps1'; -Arg1 'Hello' -Arg2 ' World'"
2 的 Powershell 内容。调用带参数的文件是:
Param
(
[Parameter(Mandatory = $true, HelpMessage = 'The 1st test string parameter.')]
[String]$Arg1,
[Parameter(Mandatory = $true, HelpMessage = 'The 2nd test string parameter.')]
[String]$Arg2
)
Write-Host $Arg1
Write-Host $Arg2
3。使用函数和参数调用文件
cmd /c start /min "" powershell -WindowStyle Hidden -ExecutionPolicy Bypass -Command ". 'C:\Users\username\Desktop\test me.ps1'; Get-Test -stringTest 'Hello World'"
3 的 Powershell 内容。使用函数和参数调用文件是:
function Get-Test() {
[cmdletbinding()]
Param
(
[Parameter(Mandatory = $true, HelpMessage = 'The test string.')]
[String]$stringTest
)
Write-Host $stringTest
return
}
如果您需要在任务计划程序中运行它,则调用%comspec% 作为程序/脚本,然后调用上述文件的代码作为参数。
注意:当 PS1 文件的路径中有空格时,所有示例都有效。