运行具有不同凭据的powershell脚本

时间:2017-07-13 17:25:20

标签: powershell

我正在尝试运行powershell脚本来搜索特定文件的网络驱动器。在我的测试中,我发现我的脚本运行得很好,但是我需要搜索的网络驱动器需要我的域管理员登录。

我有

Start-Process powershell.exe -Credential "domain\adminusername" -NoNewWindow -ArgumentList "Start-Process powershell.exe -Verb runAs"

作为我脚本的第一行,但每当我运行脚本时,我都会收到此错误:

Start-Process : This command cannot be run due to the error: The directory 
name is invalid.
At Path\to\script.ps1:1 char:1
+ Start-Process powershell.exe -Credential "domain\adminusername" -NoN ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo          : InvalidOperation: (:) [Start-Process], 
InvalidOperationException
+ FullyQualifiedErrorId : 
InvalidOperationException,Microsoft.PowerShell.Commands.StartProcessCommand

它在谈论什么目录名称?如果我将脚本移动到实际的网络驱动器,我仍然会得到相同的错误。如何以不同的用户身份运行脚本?

2 个答案:

答案 0 :(得分:1)

您可以使用net use命令获取访问权限,或使用new-psdrive命令。另一个选项是start-process cmd提示符,并在其中使用runas。此外,您可能需要包含powershell.exe的完整路径或将其添加到路径变量。 %SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe

答案 1 :(得分:0)

New-PSDrive工作了!非常感谢你!