You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

包含提权重启新实例的PowerShell脚本执行后如何自动关闭shell窗口

问题原因

你添加的管理员权限校验逻辑中,提权时会新启动一个PowerShell进程运行脚本,启动参数里包含-noexit,这个参数的作用是要求PowerShell执行完指定脚本后保持会话不退出,因此哪怕脚本末尾添加了exit语句,新启动的进程依然不会自动关闭,这就是问题的根源。

修复方案
  • 直接删除Start-Process参数中的-noexit即可,修改后的对应代码段如下:
Start-Process pwsh -Verb RunAs -ArgumentList ('-noprofile -file "{0}" -elevated' -f ($myinvocation.MyCommand.Definition))
  • 如果需要临时调试脚本执行过程,可以临时保留-noexit参数,调试完成后再删除即可满足执行完自动关闭窗口的需求。
补充说明

删除-noexit参数后,脚本所有逻辑执行完成后会自动退出PowerShell进程,无需额外在脚本末尾添加exit语句也能自动关闭窗口。如果你的脚本中有分支跳转逻辑需要主动终止,依然可以保留末尾的exit语句指定退出状态码。


内容的提问来源于stack exchange,提问作者Ooker

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 22:27:02