PowerShell控制台获胜';t在执行脚本后关闭
本文关键字:脚本 执行 获胜 控制台 PowerShell | 更新日期: 2023-09-27 18:29:15
我有一个PowerShell脚本,作为它的最后一条指令,它正在调用一个C#程序。此PowerShell脚本正在计划程序上的Windows服务器上运行。问题是脚本正在使用的PowerShell控制台窗口在脚本执行完毕后不会关闭或消失。
我们需要关闭控制台窗口,否则调度程序将在任务管理器上有多个PowerShell.exe程序。
我们已经尝试添加exit
和break
,但窗口仍然保持不变。
PowerShell脚本中是否有任何方法可以在脚本执行完毕后强制关闭控制台窗口?
您在调用电源时是否尝试过-NonInteractive模式
C: ''Windows''System32''WindowsPowerShell''v1.0''powershell.exe-WindowStyle Hidden-NonInteractive C:''scripts''myscript.ps1
通过启动进程从PowerShell启动C#程序,您可以并行执行它,而不需要让PowerShell等待它完成。您可以使用-WindowStyle Hidden来确保C#程序在启动时不会创建新窗口。
Start-Process .'ProductiondataImportNew.exe -WindowStyle Hidden
将其放在.ps1文件的底部:
Stop-Process -processname powershell
发现这是由于StartInfo.RedirectStandardInput被设置为true,我想如果它期望更多的输入,它就不会关闭。。。将其设置为false将在执行后正确关闭窗口。