我正在尝试运行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
它在谈论什么目录名称?如果我将脚本移动到实际的网络驱动器,我仍然会得到相同的错误。如何以不同的用户身份运行脚本?
答案 0 :(得分:1)
您可以使用net use
命令获取访问权限,或使用new-psdrive
命令。另一个选项是start-process
cmd提示符,并在其中使用runas
。此外,您可能需要包含powershell.exe的完整路径或将其添加到路径变量。 %SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe
答案 1 :(得分:0)
New-PSDrive工作了!非常感谢你!