2013-11-27 24 views
1

我想測試路徑存在。我寫了下面的腳本,但我不能將字符串添加到自定義對象。這是違規行$DesktopCheck = | $FName + "\desktop"。如何將字符串「桌面」添加到自定義對象$ fname?如何將自定義對象連接到字符串

$FoldNames = dir \\server\RedirectedFolders | Select-Object fullname 

foreach ($FName in $FoldNames) 
{ 
    $DesktopCheck = | $FName + "\desktop" 
    Test-Path $DesktopCheck 
} 

感謝

回答

4

使用Join-Path構建路徑。它有助於避免由於必須跟蹤前/後反斜槓而導致的頭痛。除非在比賽中需要通配符/模式,否則我還建議使用選項-LiteralPath。試試這個:

dir \\server\RedirectedFolders | % { 
    Test-Path -LiteralPath (Join-Path $_.FullName "desktop") 
} 
+0

結果的格式不正確的路徑。這是一個示例結果 @ {FullName = \\ server \ RedirectedFolders \ Alan.Richardson} \ desktop。我希望結果是\\ server \ RedirectedFolders \ Alan.Richardson \ desktop。 – resolver101

+0

謝謝。正是我想要的:-) – resolver101

0

試試這個:

$FoldNames = dir \\server\RedirectedFolders | Select-Object -ExpandProperty fullname 

foreach ($FName in $FoldNames) 
    { 
    Join-Path -Path $FName -ChildPath '\desktop' 
    Test-Path $DesktopCheck 
    } 
相關問題