2015-09-18 3 views
0

У меня есть несколько сот папок, которые выглядят следующим образом:проверки Powershell, если файл существует в нескольких папках и выходе

\\\uat.xxx.com\FileExport\New Collections\LCTS 

\\\uat.xxx.com\FileExport\New Collections\GBSS 

\\\uat.xxx.com\FileExport\New Collections\TRGS 

и т.д.

Мне нужно, чтобы проверить их для конкретного файла, например, "Results 20150722New.dat"

Мне нужно знать папки, которые не содержат файл, может быть приятно, если это можно вывести в файл, например. log.txt, но его больше мне нужен список папок, которые его не содержат.

Я пытался использовать Test-Path, но я действительно не получаю нигде

любой шанс кто-то может помочь мне сделать старт на этой операции

+0

Просьба указать пример кода, который вы пробовали, указание фактического ожидаемого результата и любых ошибок, которые вы получаете. – steoleary

ответ

0

Как один раз, когда вы можете найти имена (строка) все каталоги, которые не содержат такого имени файла, используя:

Get-ChildItem "\\uat.xxx.com\FileExport\New Collections\" | 
Where {$_.PSIsContainer } | 
ForEach { if (-not(Test-Path "$($_.FullName)\Results 20150722New.dat")) {Echo $_.FullName } } 

Дополнительно укажите -Recurse переключатель для поиска папки рекурсивно.

Если вам нужно будет работать с результатами позже, я бы предпочел сохранить объекты DirectoryInfo в clollection, а не преобразовывать их в строки с помощью командлета Echo.

$dirs_not_containing_file = @() 
$dirs_not_containing_file += 
Get-ChildItem "\\uat.xxx.com\FileExport\New Collections\" | 
Where {$_.PSIsContainer } | 
ForEach { if (-not(Test-Path "$($_.FullName)\Results 20150722New.dat")) {$_} }  

Разделенный второй оператор на несколько строк для удобства чтения.

+0

Спасибо, что дал мне начало, я должен был сказать, мне нужно иметь возможность перечислять папки или их часть, например. \\ uat.xxx.com \ FileExport \ New Collections \ XXXX \ part, так как есть загрузка там нас не интересует –

+0

Что вы подразумеваете под «списком папок»? Чтобы создать таблицу папок и содержать/не содержать столбец? –

Смежные вопросы