- Команда DIR
- Примеры использования команды DIR:
- Как получить список файлов через командную строку (cmd)?
- Зачем может понадобиться список файлов из командной строки
- Выводим список файлов папки и ее подпапках на экран командной строки
- Создаем текстовый файл со списком файлов в командной строке
- Создаем текстовый файл со списком файлов определенного расширения в командной строке
- Получение всех mp3 файлов в папке и во всех вложенных папках из командной строки
- Получение всех фотографий в формате JPEG в папке и во всех вложенных папках из командной строки
- Получение простого формата списка из командной строки
Команда DIR
Команда DIR позволяет отобразить список файлов и подкаталогов для указанного каталога. Список может быть отсортирован по множеству критериев, задаваемых параметрами командной строки.
Формат командной строки:
DIR [диск:][путь][имя_файла] [/A[[:]атрибуты]] [/B] [/C] [/D] [/L] [/N] [/O[[:]порядок]] [/P] [/Q] [/S] /T[[:]время]] [/W] [/X] [/4]
Параметры командной строки:
[диск:][путь][имя_файла] — Диск, каталог и/или файлы, которые следует включить в список.
/A — Вывод файлов с указанными атрибутами:
D Каталоги
R Доступные только для чтения
H Скрытые файлы
A Файлы для архивирования
S Системные файлы
Префикс «-» имеет значение НЕ
-S НЕ системные файлы.
/B — Вывод только имен файлов.
/C — Применение разделителя групп разрядов для вывода размеров файлов (по умолчанию). Для отключения этого режима служит ключ /-C.
/D — Вывод списка в несколько столбцов с сортировкой по столбцам.
/L — Использование нижнего регистра для имен файлов.
/N — Отображение имен файлов в крайнем правом столбце.
/O — Сортировка списка отображаемых файлов.
Порядок: N По имени (алфавитная), S По размеру (сперва меньшие), E По расширению (алфавитная), D По дате (сперва более старые), G Начать список с каталогов. Префикс «-» имеет значение НЕ
/P — Пауза после заполнения каждого экрана.
/Q — Вывод сведений о владельце файла.
/R — Отображение альтернативных потоков файлов.
/S — Вывод списка файлов из указанного каталога и его подкаталогов.
/T — Выбор поля времени для отображения и сортировки
время:
C Создание (время создания — Create )
A Последнее использование (последний доступ — Accsess )
W Последнее изменение (последняя модификация Write)
/W — Вывод списка в несколько столбцов.
/X — Отображение коротких имен для файлов, чьи имена не соответствуют стандарту 8.3. Формат аналогичен выводу с ключом /N, но короткие имена файлов выводятся слева от длинных. Если короткого имени у файла нет, вместо него выводятся пробелы.
/4 — Вывод номера года в четырехзначном формате
Стандартный набор ключей можно записать в переменную среды DIRCMD. Для отмены их действия введите в команде те же ключи с префиксом «-«, например: /-W.
Примеры использования команды DIR:
DIR /? — отобразить справку по использованию команды.
DIR — отобразить список файлов и подкаталогов текущего каталога.
DIR /P — отобразить список файлов и подкаталогов текущего каталога в режиме постраничного вывода на экран. При выполнении команды DIR с данным ключом, после заполнения экрана, вывод информации приостанавливается до нажатия какой-либо клавиши. Аналогично выполнению команды DIR в цепочке с командой MORE — DIR | MORE
DIR > C:\listdir.txt — отобразить список файлов и подкаталогов текущего каталога с выводом результатов в текстовый файл .
DIR C:\WINDOWS\*.dll — отобразить список файлов с расширением dll из каталога C:\WINDOWS
DIR C:\WINDOWS\SYSTEM32\X*.* — отобразить список файлов из каталога C:\WINDOWS\SYSTEM32, имена которых начинаются с символа X
DIR C:\WINDOWS\SYSTEM32\*Y.EXE — отобразить список файлов с расширением .exe из каталога C:\WINDOWS\SYSTEM32, имена которых заканчиваются символом Y
DIR C:\WINDOWS\system32\. t.* — отобразить список файлов, имя которых содержит 3 любых символа ( . ) и символ t
DIR C:\WINDOWS\SYSTEM32\*.* /A:H — отобразить список скрытых файлов и подкаталогов из каталога C:\WINDOWS\SYSTEM32
DIR C:\WINDOWS\SYSTEM32\*.* /A:H — отобразить список скрытых файлов и подкаталогов из каталога C:\WINDOWS\SYSTEM32
DIR C:\ /A:-AH — отобразить список скрытых ( H ) файлов и подкаталогов из корневого каталога диска C: без атрибута «Архивный» ( -A )
DIR C: /A:DH — отобразить список скрытых каталогов в корне диска C:
dir c:\ /a:DH /d — тоже самое, но с отображением информации в несколько столбцов, с сортировкой имен в алфавитном порядке. Пример результата:
Том в устройстве C имеет метку C
Серийный номер тома: 1884-ABEC
Содержимое папки c:\
[Config.Msi]               [System Volume Information]
0 файлов 0 байт
5 папок 103 593 283 584 байт свободно
Та же информация, но параметр /D не задан:
Том в устройстве C имеет метку C
Серийный номер тома: 1884-ABEC
Содержимое папки c:\
16.01.2013 11:22 Config.Msi
26.04.2012 09:05 Fix-It
25.07.2011 11:31 RECYCLER
03.08.2011 16:06 System Volume Information
24.04.2008 17:36 VCOM
0 файлов 0 байт
5 папок 103 593 283 584 байт свободно
Для сортировки имен отображаемых файлов и каталогов используется параметр /O
/O:N — сортировать по имени в алфавитном порядке( Name ) С использованием знака » — » — сортировать в обратном порядке.
/O:S — сортировать по размеру в возрастающем порядке( Size ). Со знаком » — » — сортировать в порядке убывания размеров файлов.
/O:E — сортировать по расширению имени файла ( Extension ) /O:-E — в обратном порядке
/O:D — сортировать по дате и времени модификации файла или каталога.
/O:-D — в обратном порядке ( от новых к старым )
/O:G — сначала отображать список каталогов, затем — файлов.
Использование параметра /T позволяет отсортировать списки файлов и каталогов в соответствии с отметками времени ( Time Stamp ), хранящимися в файловой системе Windows для каждого из них:
/T:C — сортировать по времени создания ( Creation )
/T:A — сортировать по времени доступа ( Access )
/T:W — сортировать по времени модификации , последней операции записи ( Written ). Этот параметр используется по умолчанию.
dir %temp%\*.* /a:H /TC — отобразить все скрытые файлы и папки в каталоге временных файлов, заданном переменной среды окружения TEMP , и отсортировать их в порядке возрастания даты создания.
dir %SystemRoot%\system32\*.exe /b /a:H /TA — отобразить список скрытых исполняемых файлов в системном каталоге и отсортировать их по времени последнего доступа.
DIR C:\ /X — отобразить список файлов и каталогов в корневом каталоге диска C: с отображением коротких имен для файлов, чьи имена не соответствуют стандарту 8.3. Стандарт 8.3 означает, что для имени файла отводится не более 8 символов, а для расширения — не более 3-х. Этот стандарт использовался в устаревших операционных системах семейства MS-DOS, не поддерживавших длинные имена файлов. Длинные имена преобразуются в короткие с использованием первых шести символов и конструкции
N , где N — это порядковый номер для имен, имеющих одинаковое начало и разное окончание после 8-го символа:
28.01.2013 16:48                              DOCUMENT
DOCUME
2     DOCUMENTS
DOCUME
1      Documents and Settings
В примере отображается список из 3-х каталогов:
DOCUMENT — имя каталога содержит 8 символов и не преобразуется в стандарт 8.3
DOCUMENTS — имя содержит 9 символов и в формате 8.3 представлено как DOCUME
Documents and Settings — представлено как DOCUME
1 поскольку длинное имя файла преобразуется в стандарт 8.3 с учетом строчных и заглавных символов, а коды строчных букв следуют в таблице символов перед кодами заглавных.
Параметры командной строки команды DIR можно определить в переменной окружения DIRCMD.
SET DIRCMD=/O:N /B /P — определить параметры /O , /B и /P .
После этого, выполнение команды DIR без параметров будет аналогично выполнению команды:
Если в командной строке команды DIR задан параметр, определенный в переменной DIRCMD, то его значение более приоритетно, и будет использоваться в процессе выполнения данной команды.
Для расширения возможностей команды DIR можно воспользоваться объединением ее в цепочку с командой поиска текстовой информации FIND
DIR C:\*.* /s | FIND «28.01.2013» — отобразить список всех файлов и каталогов диска C: имеющих отметку времени «28 января 2013 г.»
Для обработки отдельных полей из строк вывода результатов команды DIR можно воспользоваться командой FOR
Параметр командной строки /R применим только в Windows 7 и более поздних версиях. Он используется для отображения альтернативных потоков файлов в файловой системе NTFS.
dir /r — отобразить список файлов текущего каталога с именами альтернативных потоков.
dir /r proxylist.zip — отобразить список альтернативных потоков файла proxylist.zip . Пример отображаемой информации:
455 881 proxylist.zip
          26 proxylist.zip:$CmdZnID:$DATA
          26 proxylist.zip:Zone.Identifier:$DATA
Альтернативные потоки файлов используются для хранения данных, не связанных с содержимым основного потока (собственно содержимого файла) и на практике применяются для привязки дополнительной информации к этому содержимому. Так, например, многие антивирусы хранят в альтернативных потоках контрольные суммы проверенных на заражение файлов, а система безопасности использует их для определения факта скачивания файлов по сети. Подробнее об альтернативных потоках — в статье Альтернативные потоки NTFS, или как Windows определяет, что файл был загружен из Интернет
Как получить список файлов через командную строку (cmd)?
Зачем может понадобиться список файлов из командной строки
Если вам когда-нибудь понадобиться получить список всех файлов, то вы обнаружите пренеприятнейшую новость. Интерфейс проводника Windows не позволяет вам это сделать в простой и понятной форме. И вроде бы задача до безумия проста, и вроде перед глазами все необходимые файлы, но. Однако, это можно очень просто сделать с помощью командной строки (cmd). Кроме того, командная строка позволит вам отфильтровать только необходимые файлы, например, только mp3. В данном случае мы будем использовать специальную команду «dir». Скорее всего, опытным пользователям это команда хорошо знакома, поэтому статья будет для них не интересной. Но, для большинства обычных пользователей она окажется весьма полезной.
Примечание: вы так же можете использовать различные каталогизаторы и органайзеры, то они требуют установки дополнительных приложений.
Если вам кажется, что это никогда вам в жизни не пригодится, то вы ошибаетесь. Практически каждый пользователь каждый день в неявном виде использует списки файлов. Это и поиск необходимого документа среди всех ваших документов. Это музыка. Это фотографии. Это различный экспорт файлов в ваших приложениях. Банально, тот же плей лист. Просто вы никогда не сталкивались с такими простыми задачами, как «передать список файлов, например, в техподдержку», «коллективно выбрать необходимую вам музыку из всего списка» (причем обычно это делается на бумаге, да существует огромное количество «модных девайсов», но они никогда не заменят такие простые вещи, как бумагу и карандаш), «загрузить список в новое приложение» (далеко не во всех приложениях качественно реализован импорт), «использование для технических нужд тех же консольных приложений» (например, различная пакетная обработка файлов; конечно, рядовой пользователь никогда не будет этого делать, но. ) и многое многое другое.
Выводим список файлов папки и ее подпапках на экран командной строки
- Откройте командную строку в необходимой папке (см. предыдущую статью)
- Введите «dir» (без кавычек) и нажмите Enter. Вы получите список файлов (см. картинку)
- Если вам необходимо перечислить файлы во всех вложенных папках, то вместо «dir» используйте «dir /s» (вводить без кавычек)
Полученные списки могут быть довольно длинными, особенно если список создается для каких-нибудь объемных каталогов. Такие списки не поместятся на экране, и с ними будет не очень удобно работать. К счастью, вы очень легко можете сохранить весь полученный список в отдельный текстовый файл.
Создаем текстовый файл со списком файлов в командной строке
Для того чтобы выведенный список сохранить в текстовый файл, используется специальный символ перенаправления потока «>» (без кавычек).
- Откройте командную строку в необходимой папке.
- Введите «dir > listmyfolder.txt» (без кавычек) и нажмите Enter. Весь список сохранится в файле «listmyfolder.txt».
- Если вам необходимо так же сохранить файлы и из всех вложенных каталогов, то используйте команду «dir /s > listmyfolder.txt» (без кавычек)
Файл «listmyfolder.txt» будет создан в той же папке, в которой вы находитесь. Небольшой уточнение по поводу файла, вы можете называть его как вам будет угодно, задавать ему абсолютно любое расширение. Каких-то специальных ограничений нет, кроме тех, что требует система Windows к названиям файлов. Так же вы можете использовать полные пути, для сохранения списка в другом каталоге. Например, вы хотите сохранить файл на диске «F:» в каталоге «list». Для этого вам необходимо будет использовать такую команду «dir > F:\list\listmyfolder.txt» (без кавычек). Как видите ничего сложно нет.
Создаем текстовый файл со списком файлов определенного расширения в командной строке
Далеко не всегда вам необходимо получить все файлы в каталоге. Например, вы хотите получить только список фотографий или только музыки. Согласитесь, что вручную изменять полный список файлов — скучная и рутинная задача. Чтобы облегчить всем жизнь, командная строка поддерживает специальный символ *, с помощью которого можно составить так называемые регулярные выражения (порой их называют маской). Не стоит пугаться страшных слов, никаких сложных конструкций в варианте «/d+?[\.2345]?d+[\.]?mp3/$» вы не встретите. Далее мы приведем простые примеры, как вы можете получить списки всех ваших mp3 и jpg файлов, т.е. музыки и фотографий.
Получение всех mp3 файлов в папке и во всех вложенных папках из командной строки
Теперь команда выглядит следующим образом:
В файле «listmp3.txt» будет список всех ваших MP3-файлов.
Получение всех фотографий в формате JPEG в папке и во всех вложенных папках из командной строки
Теперь команда выглядит следующим образом:
В файле «listjpg.txt» будет список всех ваших фотографий в формате JPEG.
Получение простого формата списка из командной строки
Вышеописанные команды сформируют списки, которые дополнительно будут включать информацию о файлах, а именно размер и дату создания. Но, такая информация далеко не всегда необходима. Порой нам нужен именно простой список файлов. Чтобы сформировать такой список, необходимо добавить в команду специальный параметр «/b». В итоге команда будет выглядеть следующим образом:
Если вам интересно, то есть много других полезных команд. Чтобы узнать полный список команд, вам необходимо ввести команду «help». Конечно, краткое описание команды вряд ли поможет вам представить, как можно использовать команду. Поэтому существует специальный параметр «/?». Если вы его введете сразу после команды, то в окне консоли появится небольшой мануал по использованию команды и ее параметров.
Предупреждение: Если вы не сильно разбираетесь в том, что именно делает команда, то настоятельно вам рекомендуем сперва прочитать о ее применении, хотя бы в поисковике. Неаккуратное и неправильное использование команд может привести к неприятным последствиям. Конечно, можно использовать образы диска перед тестами, но, согласитесь, что это сильно накладно.