新PSDrive似乎在作爲一個作業提交時,在腳本塊中工作,它交互作爲一個腳本塊工作良好。PowerShell新PSD驅動器沒有映射驅動器
這可以作爲一個正常的交互腳本塊:
$getcred = Get-Credential 'myuser'
$servers = "myserver"
$jsession = New-PSSession -ComputerName $servers -Credential $getcred
Invoke-Command -ScriptBlock {
New-PSDrive -name share1 -psprovider FileSystem -root \\server\directory;
dir share1:
};
這不會安裝驅動器:
$getcred = Get-Credential 'myuser'
$servers = "myserver"
$jsession = New-PSSession -ComputerName $servers -Credential $getcred
$job = Invoke-Command -Session $jsession -AsJob -Jobname 'testjob' -ScriptBlock {
New-PSDrive -name share1 -psprovider FileSystem -root \\server\directory;
dir share1:
};
Wait-Job $job
$r = Receive-Job $job
$r
找不到驅動。名稱爲'share1'的驅動器不存在。
看來安全上下文沒有在會話上傳輸?
你確定原來的例子在工作之外工作?這個問題應該如我在答覆中提到的那樣,並且在有或沒有工作的情況下發生。問題應該是invoke-command的雙重跳躍,而不是作業。 –