Подсчет файлов с помощью команд Powershell
Как подсчитать все файлы в определенной папке (и всех подпапках) с помощью команды Powershell Get-ChildItem?
С (Get-ChildItem <Folder> -recurse).Count
также подсчитываются папки, и это не то, что я хочу. Существуют ли другие возможности для быстрого подсчета файлов в очень больших папках?
Кто-нибудь знает короткий и хороший учебник относительно Windows Powerhell?
Ответы
Ответ 1
Я передам результат в командлет Measure-Object
. Использование (...). Count не может дать ничего, если нет объектов, соответствующих вашим критериям.
$files = Get-ChildItem <Folder> -Recurse | Where-Object {!$_.PSIsContainer} | Measure-Object
$files.Count
В PowerShell v3 мы можем сделать следующее только для получения файлов:
Get-ChildItem <Folder> -File -Recurse
Ответ 2
Фильтр для файлов перед подсчетом:
(Get-ChildItem <Folder> -recurse | where-object {-not ($_.PSIsContainer)}).Count