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

能否让PowerShell Start-Process在Windows Terminal新建标签而非新窗口

Windows Terminal内直接打开提权PowerShell标签的实现方案

原命令的问题

你在当前PowerShell标签执行的start-process Powershell -Verb runas命令,本质是直接启动一个独立的、由传统conhost控制台承载的高权限PowerShell进程,既没有走Windows Terminal的标签创建逻辑,也因为UAC的进程隔离机制无法直接挂载到当前运行在标准权限下的Terminal窗口,所以必然弹出独立窗口。

核心限制说明

Windows UAC安全机制默认做了进程完整性级别隔离:运行在标准用户权限下的Windows Terminal主进程,没有权限直接生成高完整性级别的子进程挂载到自身窗口内,必须经过UAC提权确认的中转步骤,不存在无任何依赖的原生单命令直接实现方式。

可落地实现方法

  • 方法1:使用Terminal内置的提权配置项(推荐,无第三方依赖)
    该方法要求Windows Terminal版本在1.13及以上,操作步骤如下:

    1. 打开Windows Terminal设置,点击左下角「打开JSON文件」,找到你常用的PowerShell对应的配置段
    2. 在配置段的参数里添加一行"elevate": true,,保存JSON文件
    3. 之后需要开提权标签时,既可以直接在Terminal顶部下拉菜单选对应PowerShell配置,也可以在现有标签里执行以下命令触发:
    wt -w 0 new-tab --profile "对应PowerShell配置文件的显示名称"
    

    命令中-w 0参数指定在当前活动的Terminal窗口新建标签,执行后会弹出UAC提权确认框,确认后就会直接在当前窗口新建高权限PowerShell标签,不会弹出独立窗口。如果使用的是PowerShell 7+版本,把配置名改成对应的pwsh项名称即可。

  • 方法2:借助提权工具实现命令行快速触发
    如果你习惯用单命令快速唤起提权标签,可以安装终端提权工具gsudo,安装完成后直接在当前标签执行以下命令:

    gsudo wt -w 0 new-tab -p "Windows PowerShell"
    

    触发UAC确认后就会直接在当前窗口新建提权标签,不需要修改Terminal配置。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.03 05:48:34