2017-07-13 14 views
0

特定のファイルのネットワークドライブを検索するためにpowershellスクリプトを実行しようとしています。私のテストでは、私のスクリプトは完璧に動作することがわかりましたが、私が検索する必要のあるネットワークドライブにはDomain Adminのログオンが必要です。異なる資格情報を使用して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 

どのディレクトリ名は、それが話しているのですか?スクリプトを実際のネットワークドライブに移動すると、同じエラーが表示されます。別のユーザーとしてスクリプトをどのように実行しますか?

答えて

1

代わりにnet useコマンドまたはnew-psdriveコマンドを使用してアクセスできます。別のオプションは、start-processにcmdプロンプトを入力し、その中にrunasを使用します。また、powershell.exeの絶対パスを含めるか、path変数に追加する必要があります。 %SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe

+0

私は 'New-PSDrive'を使用して、ネットワークドライブを管理者の資格情報で何度もマッピングしています。または、PowerShellを最初に起動したときに、常に別のユーザーとして実行することもできます。 – TheMadTechnician

0

New-PSDrive worked!どうもありがとうございました!

関連する問題