新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的双重跳跃,而不是作业。 –