我正在尝试使用-credential从另一个域测试计算机中的远程文件夹
此命令可以正常工作:
Invoke-Command -ComputerName "server" -credential domain\user -ScriptBlock {Test-Path -Path "\\server\s$\temp"}
但如果我在脚本中使用它失败:
$servers = Get-Content "servers.txt"
$Path = "\\D$\Temp"
$cred = "domain\user"
ForEach ($server in $servers) {
if (invoke-command -computername $server -credential $cred -ScriptBlock {Test-Path -Path "\\$server\$Path"})
}
PD:所有这些选项都在我的域的服务器上工作,无需指定另一个凭据。
1条答案
按热度按时间q43xntqr1#
除了在if语句后缺少脚本块的语法问题外,只要将变量指定为远程变量,就可以使用
$using
或将其作为-ArgumentList
的参数传递。如果您开始使用正确的凭据运行shell,您所要做的就是直接使用
Test-Path
,但我理解您希望尝试使用-Credential
参数。