PowerShell以管理员身份运行

时间:2018-06-01 19:35:29

标签: powershell admin

当我以管理员身份运行批处理脚本时遇到以下问题。当我 通常运行相同的脚本,没有问题。

请分享一些有关此问题的想法。

snapshot of the error

2 个答案:

答案 0 :(得分:4)

以管理员身份运行时,用户会话将从您的用户会话更改为基于%SystemRoot%\System32的会话。您需要做的是获取Powershell脚本当前调用的路径,并使其成为build1.ps1脚本的路径:

$ScriptPath = Split-Path $MyInvocation.InvocationName
& "$ScriptPath\build1.ps1" -Target prepare-qa

这样,无论用户如何,脚本都会在适当的位置执行。

答案 1 :(得分:1)

以用户身份打开PowerShell时,默认目录为C:\Users\MyName

当您以管理员身份打开PowerShell时,默认目录为C:\WINDOWS\System32

在您的脚本中,尝试使用Set-Location C:\Users\myusername或脚本所在的位置。或者,完全符合脚本的路径。