在没有 运行 的情况下以管理员身份在 PowerShell(Windows 终端)中获得管理员权限
get administrator privileges in PowerShell (Windows Terminal) from without running it as an administrator
即使您是权威用户并且需要做一些需要扩展权限的事情,我也必须通过右键单击它再次 运行 终端,选择“运行 作为管理员”不像在 Linux 和其他操作系统中,我们可以借助“su”或“sudo”。
我的问题是:有没有办法获得与管理员相同的终端 window?
以编程方式在 Windows 上启动 提升的 新 PowerShell 会话(具有管理权限)- 总是在 new window - 从现有会话中,使用:
注:
- 下面的命令总是在 - 总是新的 - 常规控制台 window(
conhost.exe
) - 请参阅下一节以从 Windows 终端. 使用
Start-Process -Verb RunAs (Get-Process -Id $PID).Path
以上内容适用于两个 PowerShell 版本,并使用与 运行 当前会话相同的可执行文件;如果您知道可执行文件的名称并且可以假定它是 $env:PATH
中的第一个,则可以使用快捷方式仅按名称调用;对于 Windows PowerShell:
Start-Process -Verb RunAs powershell
PowerShell(核心)7+:
Start-Process -Verb RunAs pwsh
请参阅 了解 便利功能 ,包括 cross-platform 使用和将 命令 传递给在提升的会话中执行。
在Windows终端中打开提升的会话(也总是在新window):
# As above, 'powershell.exe' or 'pwsh.exe' may do as the argument.
# See below for Windows Terminal profile-related options.
Start-Process -Verb RunAs wt.exe ('"{0}"' -f (Get-Process -Id $PID).Path)
注:
如果所需的 PowerShell 可执行文件是您的 Windows 终端的 默认配置文件 ,您可以省略 wt.exe
[= 之后的参数22=]
# Launch the elevated session with the shell configured as
# the default profile.
Start-Process -Verb RunAs wt.exe
如果您想要针对特定的Windows终端配置文件,请传递其名称(或 GUID)case-exactly 到 -p
(--profile
) 参数;例如:
# Launch the elevated session with the "Windows PowerShell" profile.
Start-Process -Verb RunAs wt.exe '-p "Windows PowerShell"'
即使您是权威用户并且需要做一些需要扩展权限的事情,我也必须通过右键单击它再次 运行 终端,选择“运行 作为管理员”不像在 Linux 和其他操作系统中,我们可以借助“su”或“sudo”。
我的问题是:有没有办法获得与管理员相同的终端 window?
以编程方式在 Windows 上启动 提升的 新 PowerShell 会话(具有管理权限)- 总是在 new window - 从现有会话中,使用:
注:
- 下面的命令总是在 - 总是新的 - 常规控制台 window(
conhost.exe
) - 请参阅下一节以从 Windows 终端. 使用
Start-Process -Verb RunAs (Get-Process -Id $PID).Path
以上内容适用于两个 PowerShell 版本,并使用与 运行 当前会话相同的可执行文件;如果您知道可执行文件的名称并且可以假定它是 $env:PATH
中的第一个,则可以使用快捷方式仅按名称调用;对于 Windows PowerShell:
Start-Process -Verb RunAs powershell
PowerShell(核心)7+:
Start-Process -Verb RunAs pwsh
请参阅
在Windows终端中打开提升的会话(也总是在新window):
# As above, 'powershell.exe' or 'pwsh.exe' may do as the argument.
# See below for Windows Terminal profile-related options.
Start-Process -Verb RunAs wt.exe ('"{0}"' -f (Get-Process -Id $PID).Path)
注:
如果所需的 PowerShell 可执行文件是您的 Windows 终端的 默认配置文件 ,您可以省略
wt.exe
[= 之后的参数22=]# Launch the elevated session with the shell configured as # the default profile. Start-Process -Verb RunAs wt.exe
如果您想要针对特定的Windows终端配置文件,请传递其名称(或 GUID)case-exactly 到
-p
(--profile
) 参数;例如:# Launch the elevated session with the "Windows PowerShell" profile. Start-Process -Verb RunAs wt.exe '-p "Windows PowerShell"'