it-swarm.cn

在PowerShell中获得管理员权限

我在Windows Vista计算机上只有一个帐户,并且该用户具有管理特权。但是,当我尝试在PowerShell中执行命令以杀死某个进程时,收到“拒绝访问”消息。我如何成为管理员?

29
Brian

最简单的方法是使用管理令牌启动Powershell。为此,请右键单击Powershell(或它的快捷方式),然后单击“以管理员身份运行”。或者,您可以使用 elevate.cmd

14
Knox

Powershell v2的方法 根据Microsoft ,是右键单击快捷方式,然后选择以管理员身份运行

并在Powershell窗口中提升:

start-process powershell –verb runAs

从cmd.exe批处理文件,快捷方式或运行行中看到的内容(重复)如下所示:

powershell "start-process powershell -verb runas"
26
Nathan Hartley

这将打开一个新的powershell实例:

function Run-Elevated ($scriptblock)
{
  # TODO: make -NoExit a parameter
  # TODO: just open PS (no -Command parameter) if $scriptblock -eq ''
  $sh = new-object -com 'Shell.Application'
  $sh.ShellExecute('powershell', "-NoExit -Command $scriptblock", '', 'runas')
}

我希望这有问题-特别是您不会在调用脚本中获得脚本块的输出。另一方面,它将在新的PS实例中存在,因此您可以在那里对其进行破解。

10
user2278

如果要始终以管理员权限运行PowerShell,则可以右键单击PowerShell快捷方式,然后单击“快捷方式”选项卡上的“高级...”按钮,然后选择“以管理员身份运行” ”。

5
Ryan Fisher

简单方法...

这是设置简易命令的方法,以便随时随地从任何PowerShell会话获取管理员权限!

步骤1:打开PowerShell配置文件。 (如果缺少该文件,则允许记事本创建该文件。)

notepad "$profile"

步骤2:将以下代码粘贴到该文件中的任何位置。 (根据要运行的PowerShell版本进行选择-请注意,该配置文件是特定于版本的,因此,如果并行运行它们,则可以对每个PowerShell版本执行此操作)。

# PowerShell 5
function GoAdmin { Start-Process PowerShell –Verb RunAs }

# PowerShell Core
function GoAdmin { Start-Process pwsh –Verb RunAs }

步骤3:重新启动PowerShell。该命令现在永久可用。

第4步:只要您想成为管理员,只需键入GoAdmin(不必担心键入正确的大小写; PS函数实际上不区分大小写)。您当然可以为函数命名其他名称,例如Elevate或其他名称,但是我不希望有任何冲突的风险,因此我将其命名为两个单词的短语,不带任何连字符,以确保它不会与PowerShell自身的功能。

请注意,管理员窗口在单独的命令行管理程序中打开。您可以关闭原始外壳程序,或使其保持打开状态。如果您的管理员工作做了诸如添加/修改环境变量之类的“大事”,那么您的用户Shell(非管理员)只需键入refreshenv即可重新加载其环境并获取更改。 (编辑:发现refreshenv由出色的 Chocolatey 软件包管理器提供。键入Update-SessionEnvironment相反,如果您没有巧克力味。)

因此,基本上,只需GoAdmin,执行诸如安装软件包之类的管理工作(当然使用 https://chocolatey.org/ !),然后关闭管理窗口并运行refreshenv在您的用户外壳程序中!瞧.

1
Mitch McMabers