0

我想檢查遠程服務器中是否存在特定的文件夾。我有文件PathList.txt,其中包含要檢查的服務器地址和文件夾路徑。但即使在測試路徑上失敗我的本地計算機(我給我的本地機器IP)。它說路徑不退出時的路徑確實存在測試路徑無法檢查文件夾路徑

$ServerPaths = Get-Content .\PathList.txt 

#Check for paths in servers. 
Foreach ($s in $ServerPaths) 
{ 
    $Server,$Paths = $s.split('=',2) 
    $AllPaths = $Paths -split ',' 
    $Server=$Server.Trim() 

    Foreach ($Path in $AllPaths) 
    { 
    $Path=$Path.Trim() 

    $CheckPath = "\\"+$Server+"\"+$Path 

    if(Test-Path $CheckPath) 
    { 
     Write-host $Server $Path "Path exists" 
    } 
    else 
    { 
     Write-host $Server $Path "Path does not exists" 
    } 

    } 

} 

PathList.txt包含

10.247.211.12 = D$\Install, D$\Dir 
+0

我沒有看到任何根本上錯誤的代碼。您是否檢查過$ CheckPath是否有正確的值,並且您可以手動訪問路徑? –

+0

同意,回到基礎:並運行命令: 'Test-Path「\\ 10.247.211.12 \ D $ \ Install」' 或 'Test-Path「\\ Localhost \ D $ \ Install」 ' – iRon

回答

1

我檢查你的代碼,它工作正常,但前提是你之前訪問過路徑(所以它可以緩存憑據),或者如果y我們當前的用戶可以訪問共享。我建議您將-Credential參數添加到您的Test-Path調用中。