Я пытаюсь создать сценарий powershell, который будет считать все файлы .xml в каталогах подкаталогов & и перечислить значение + путь.Скрипт Powershell для подсчета конкретных файлов в каталогах и подкаталогах
До сих пор я сделал это:
Get-ChildItem -Path c:/test -recurse -include *.xml
, который близок к тому, что я хочу, но без конкретных имен файлов, только пути к папкам и счетчики.
Это то, что я получаю:
> Directory: C:\test\A_Sub-folder
> Mode LastWriteTime Length Name
> ---- ------------- ------ ----
> -a--- 27/11/2015 11:29 0 AA.xml
>
> Directory: C:\test
> Mode LastWriteTime Length Name
> ---- ------------- ------ ----
> -a--- 27/11/2015 11:29 0 BB.xml
> -a--- 27/11/2015 11:29 0 CC.xml
> -a--- 27/11/2015 11:29 0 DD.xml
И я пытаюсь получить это (или аналогичный):
> Directory: C:\test\A_Sub-folder
> 1
> Directory: C:\test
> 3
План запустить этот скрипт на каждом корневом диске (некоторые диски имеют около 5k XML-файлы, так что я не знаю, как это повлияет на производительность)
Edit:.
Это прекрасно работает для вложенных папок, но по какой-то причине оно не работает в каталогах корневых дисков (например. е: /). Я пытаюсь исключить \ windows и \ program файлы, но это не сработает. Есть ли способ исключить корневые каталоги в поиске?
сценария до сих пор:
$excludedPaths = @("E:\Windows", "E\Program Files", "E:\Program Files (x86)", "E:\MSSQL", "E:\MSSQL11.MSSQLSERVER");
$pathtocount = Read-Host -Prompt 'Input path to count xml files'
Get-ChildItem -Path $pathtocount -recurse -include *.xml | Where-Object { $excludedPaths -notcontains $_.Directory } | Group-Object -Property Directory | Sort-Object count
Ваш был лучше, чем мой. :) – Nate
@Nate Не обескураживайте, вы приложили немало усилий в своем ответе, это было не совсем правильно. Продолжайте пытаться, хорошо видеть новых людей, отправляющих ответы! :) Плюс, поразительно, насколько вы можете научиться просто разбираться в чужих проблемах.Иногда это приводит к большим новым перспективам проблем и помогает решать проблемы, с которыми вы сталкиваетесь самостоятельно. – TheMadTechnician
Блестящий! Именно то, что я хотел! Привет, ребята :) – daelas