我想测试路径存在。我写了以下脚本,但我不能将字符串添加到自定义对象。这是违规行$DesktopCheck = | $FName + "\desktop"
。如何将字符串“desktop”添加到自定义对象$ fname?
$FoldNames = dir \\server\RedirectedFolders | Select-Object fullname
foreach ($FName in $FoldNames)
{
$DesktopCheck = | $FName + "\desktop"
Test-Path $DesktopCheck
}
谢谢
答案 0 :(得分:4)
使用Join-Path
构建路径。它有助于避免因必须跟踪前导/尾随反斜杠而导致的头痛。我还建议使用选项-LiteralPath
,除非您在匹配中需要通配符/模式。试试这个:
dir \\server\RedirectedFolders | % {
Test-Path -LiteralPath (Join-Path $_.FullName "desktop")
}
答案 1 :(得分:0)
试试这个:
$FoldNames = dir \\server\RedirectedFolders | Select-Object -ExpandProperty fullname
foreach ($FName in $FoldNames)
{
Join-Path -Path $FName -ChildPath '\desktop'
Test-Path $DesktopCheck
}