Ваш код работает нормально.Это должно быть что-то с вашим форматированием текста, я думаю?Не могли бы вы также поделиться текстовым файлом, который вы используете для тестирования?
Мой текстовый файл:
C:\Temp
C:\Windows
C:\NoExist
C:\Program Files
Код:
Foreach ($path in Get-Content .\test.txt) {
[PSCustomObject]@{
path = $path
Exists = Test-Path $path
}
}
Мой вывод:
path Exists
---- ------
C:\Temp True
C:\Windows True
C:\NoExist False
C:\Program Files True
Изменить после комментария:
Вы можете разделить свой путь на «используя .split()
, пример ниже.
Новый текстовый файл:
"C:\temp\","1"
"C:\Windows\","3"
"C:\NoExist\","1"
"C:\Program Files\","2"
Новый код:
Foreach ($path in Get-Content .\test.txt) {
$path = $path.Split('"')
[PSCustomObject]@{
path = $path[1]
Exists = Test-Path $path[1]
}
}
Выход:
path Exists
---- ------
C:\temp\ False
C:\Windows\ True
C:\NoExist\ False
C:\Program Files\ True