В оболочке cmd.exe список файлов и каталогов формируется с помощью команды – dir, которая имеет множество ключей, позволяющих выводить только файлы с определенными атрибутами, обрабатывать вложенные подкаталоги, сортировать список по различным полям. Если выполнить эту команду без параметров, то будет выведено содержимое текущего каталога.
dir

В пути , который указывается для команды dir, можно применять подстановочные знаки. Например следующая команда выведет все файлы с расширением log из каталога c:\windows
dir c:\windows\*.log

-Exclude
– параметр позволяет задать маску файлов, которые не будут обрабатываться командой dir.
Как это работает нужно перейти в оболочку PowerShell.
Следующая команда выведет все файлы с расширением log из каталога c:\windows, кроме тех, чье имя начинается на букву d:
dir c:\windows\*.log -Exclude d*.log

-Name
– параметр позволяет выводить на экран только имена файлов таким образом , этот параметр является аналогом ключа /b команды dir из cmd.exe, например:
dir c:\windows\*.log -Name

-Force
– параметр показывает скрытые файлы.
dir -Force

В оболочке cmd.exe подобную фильтрацию в команде dir
позволяет выполнить ключ /a
dir /a

Сформировать список, состоящий только из подкаталогов или только из файлов.
dir 'c:\program files' | Where-Object {$_.PSIsContainer}

В оболочке cmd.exe подобную фильтрацию в команде dir
позволяет выполнить ключ /a
задающий ограничения на атрибуты элементов, на которые действует команда:
dir /a:d

За сортировку возвращаемого списка файлов и каталогов в команде dir /o:-d
выдаст список файлов в текущем каталоге, упорядоченный по времени последнего обращения к ним.
dir /o:-d

В PowerShell сортировку списка можно выполнить с помощью команды Sort-Object
, например:
dir | Sort-Object -Descending LastWriteTime
