Все команды MS-DOS. Справка по команде dir и ее параметрам

27.01.2019

В продолжение предыдущей статьи, мы рассмотрим поиск файлов через командную строку с помощью утилиты Dir. Утилита dir как правило используется для вывода списка файлов и каталогов в заданной папке, но так как с помощью параметров можно указать фильтр для выводимой информации, то утилита командной строки подходит и для поиска файлов или каталогов. Но, прежде, немного лирики…

Как то я наблюдал такую ситуацию: женщина заходила в социальную сеть Однокласники, потом вставляла в CR-ROM диск, на котором были ее фотки с любимым котом Мурзиком. Естественно, автоматически выскакивало диалоговое окно, в котором была вкладка, вроде, точно не помню, “Копировать изображения”, женщина благополучно на нее нажимала и ждала, что все фотографии автоматически появятся на ее станице в Однокласниках. Это меня конечно улыбнуло, стоит заметить настойчивость данной дамы, так как она повторяла процесс по несколько раз и в итоге неудач, пожаловалась на качество интернет услуг. В добавок, она умудрилась установить в системе сразу две антивирусные программы (NOD и Касперский), в итоге, Windows висел не по детски.

Командная строка dir

Утилиту dir можно использовать на ровне с утилитами . В данной статье будет рассмотрен скрипт поиска файла в командной строке Windows. Прежде чем приступать к написанию примера, давайте рассмотрим, с какими ключами работает утилита DІR:

DIR [диск: ] [путь] [имя_файла] атрибуты] ] порядок]] дата]]

[диск: ] [путь] – тут нужно указать имя диска и каталога, содержимое которых надо показать

[имя_файла] – говорит о том, что надо включить в список имена, которые надо показать, как вы уже догадались, тут можно использовать и подстановочные знаки: * или?. Для примера, на диске D я создал папку TEST, в которую поместил несколько документов различного типа:

  • generate.mf
  • infosys.mf
  • sysinfo.mf
  • xa_032.рdf
  • xa_033.рdf
  • xa_034.рdf
  • xa_035.рdf
  • xa_036.рdf
  • xa_037.pdf
  • send_mail_data.vbs.txt
  • send_mail_text.vbs.txt
  • subdomen_scan.wsf.txt

Стоит помнить, что для параметра [имя_файла] нельзя задать через запятую собственную цепочку. Теперь для разминки, осуществим поиск файла через командную строку с расширением pdf. Для этого пропишем:

Dir d:\test*.pdf

После выполнения заданной команды, мы увидим только те документы, которые имеют расширение pdf.

Хорошо, продолжим рассмотрение ключей:

атрибуты] ] – использование данного ключа позволяет отфильтровать вывод списка по атрибутам, которые могут принимать следующие значения, их можно использовать совместно:

D – собственно, только папки

H – включает вывод только скрытых документов

S – включает вывод только системных документов

R – атрибут файла “только чтение”

A – атрибут файла “архивный”

- – данный префикс имеет значение НЕ

Если ключ отсутствует, то произойдет вывод всех файлов и папок, кроме тех, которые являются скрытыми и системными, если же данный параметр прописан без атрибутов, то произойдет вывод всех документов, включая скрытые и системные.

DIR C:\ /A:HS – вывод только тех, которые имеют атрибуты «скрытый» и «системный».

DIR С:\ /А:-Н – вывод всех, кроме скрытых.

DIR С:\ /A:D – выводим список всех каталогов

– перечисляет только названия каталогов и имена файлов (в длинном формате) по одному на строчку, включая расширение. При этом выводится только основная информация, без итоговой.

/S –просмотреть информацию не только из текущего каталога, но и из его подпапок

Ну, теперь для написания скрипта, который осуществит поиск файлов в командной строке, информации достаточно. Цель такова, написать батник (searchfiles.cmd ) которому будут передаваться два аргумента: путь к диску или каталогу и шаблон, по которому будет происходить поиск файла через командную строку Windows. И так, смотрим на пример:

@If "%1"=="" (Set pathf=D:\test) else (Set pathf=%1)

@If "%2"=="" (Set exmf=*.pdf) else (Set exmf=%2)

Dir %pathf%%exmf% /s

В первой строчке мы проверяем наличие первого аргумента, если он пуст, то, переменная pathf будет содержать путь по умолчанию D:\test. Во второй – происходит проверка на второй аргумент и аналогично, при его отсутствии, переменная exmf получает значение по умолчанию *.pdf. В последней строчке будет происходить поиск файлов в командной строке по заданному шаблону.

Не стоит забывать, что сервер сценариев для работы с каталогами использует , который значительно превосходит по возможностям утилиту командная строка dir.

Вывод списка файлов и подкаталогов каталога. Вызванная без параметров команда dir выводит метку тома и серийный номер, за которыми следует список каталогов и файлов на диске, включая их имена, дату и время последнего изменения. Для файлов dir выводит также расширение имени и размер в байтах. Команда dir также выводит общее число перечисленных файлов и каталогов, их общий размер и свободное пространство (в байтах) на диске.

Синтаксис

dir [диск : ][путь ][имя_файла ] [...] [/p ] [/q ] [/w ] [/d ] [/a [[: ]атрибуты ]] [/o [[: ]порядок_сортировки ]] [/t [[: ]поле_сортировки ]] [/s ] [/b ] [/l ] [/n ] [/x ] [/c ] [/4 ]

Параметры

[диск : ][путь ] Задание диска и каталога, список файлов которого будет выведен. [имя_файла ] Задание файла или группы файлов, сведения о которых требуется вывести. /p Постраничный вывод сведений, т. е. с паузой после заполнения экрана. Для продолжения просмотра необходимо нажать любую клавишу. /q Вывод сведений о владельце файла. /w Вывод сведений в несколько колонок до пяти имен файлов или каталогов в каждой строке. /d Соответствует /w , но с сортировкой по столбцам. /a [[: ] атрибуты ] Выводит имена только тех файлов и каталогов, которые имеют указанные атрибуты. Если параметр /a не указан, команда dir выводит имена всех файлов, за исключением системных и скрытых. Если параметр /a указан без атрибутов , команда dir выводит имена всех файлов, включая скрытые и системные. Ниже приведен список значений, которые могут быть использованы при задании параметра атрибуты . Двоеточие (:) является необязательным. Значения из таблицы могут использоваться в любых комбинациях без пробела между ними. /o [[: ]порядок_сортировки ] Управление порядком сортировки и вывода имен файлов и каталогов командой dir . Если параметр /o , не задан, команда dir выводит имена в том порядке, в котором они записаны в каталоге. Если параметр /o использован без параметра порядок_сортировки , команда dir выводит имена каталогов в алфавитном порядке, затем — имена файлов в алфавитном порядке. Двоеточие (:) является необязательным. Ниже приведен список значений, которые могут быть использованы при задании параметра порядок_сортировки . Допускается использование любого их сочетания без пробелов между ними.
Значение Описание
n Сортировка по именам в алфавитном порядке
e Сортировка по расширениям в алфавитном порядке
d Сортировка по дате и времени от ранних к поздним
s Сортировка по размеру от меньших к большим
g Сортировка с группированием каталогов перед файлами
-n Сортировка по именам в обратном алфавитном порядке (от Z к A)
-e Сортировка по расширению в обратном алфавитном порядке (от.ZZZ к.AAA)
-d Сортировка по дате и времени от поздних к ранним
-s Сортировка по размеру от больших к меньшим
-g Сортировка с группировкой каталогов после файлов
/t [[: ]поле_времени ] Задание поля времени для вывода и сортировки. Ниже приведен список значений, которые могут быть использованы при задании параметра поле_времени . /s Перечисление всех случаев обнаружения определенного имени файла в указанном каталоге и всех его подкаталогах. /b Перечисление каждого имени файла (включая расширение) или каталога на отдельной строке. При использовании параметра /b заголовочные сведения или сводка не выводятся. Параметр /b отменяет параметр /w . /l Вывод несортированного списка имен каталогов и имен файлов строчными буквами. Параметр /l не позволяет преобразовывать дополнительные символы в строчные. /n Вывод списка в расширенном формате с именами файлов в правой части экрана. /x Вывод сокращенных имен файлов файловых систем NTFS и FAT. Формат совпадает с форматом параметра /n , но сокращенные имена выводятся после полных. /c Вывод разделителя десятичных разрядов в размере файлов. /4 Отображение года в четырехзначном формате. /? Отображение справки в командной строке.

Примечания

  • Использование нескольких имен_файлов

    Допускается использование нескольких имен_файлов . Разделяйте имена файлов пробелом, запятой или точкой с запятой. Для вывода группы файлов допускается применение подстановочных знаков (? и *) в параметре имя_файла .

  • Использование подстановочных знаков

    Для вывода списка подгруппы файлов и подкаталогов можно использовать подстановочные знаки (? и *).

  • Задание атрибутов файлов для вывода

    Если параметр /a используется более чем с одним значением параметра атрибуты , команда dir выведет имена только тех файлов, все атрибуты которых совпадают с заданными. Например, при использовании параметра /a со значениями атрибутов r и -h в формате /a:r-h или /ar-h команда dir выведет имена файлов, являющихся одновременно скрытыми и защищенными от записи.

  • Указание порядка сортировки имен файлов

    Если указано несколько значений порядка_сортировки , команда dir сортирует имена файлов сначала по первому условию, затем — по второму и т. д. Например, если указан ключ /o со значениями e и -s порядка_сортировки в формате /o:e-s или /oe-s , команда dir отсортирует имена каталогов и файлов по расширениям, затем от больших файлов к меньшим и выведет окончательный результат. В результате сортировки по алфавиту файлы без расширений будут идти вначале, затем имена каталогов, а потом имена файлов с расширениями.

  • Использование перенаправления и каналов

    Чтобы перенаправить вывод команды dir в файл с помощью символа (>) или использовать канал (|) для передачи вывода в другую команду, необходимо использовать параметры команды dir /a:-d и /b для вывода только списка имен файлов. Параметр имя_файла с параметрами /b и /s можно использовать, чтобы указать поиск командой dir в текущем каталоге и его подкаталогах всех файлов, соответствующих значению имя_файла . При этом команда dir выведет только имя диска, имя каталога, имя файла и расширение по одному файлу в строке. Чтобы использовать перенаправление с помощью каналов, в файле Autoexec.nt должна быть установлена переменная среды TEMP.

  • Предварительное задание параметров команды dir

    Параметры команды dir могут быть предварительно заданы включением команды set для переменной среды DIRCMD в файл Autoexec.nt. В команде set dircmd может быть использована любая допустимая комбинация параметров команды dir , включая расположение и имя файла.

    Например, чтобы использовать переменную среды DIRCMD для задания вывода в расширенном формате (/w ) по умолчанию, в файле Autoexec.nt необходимо ввести следующую строку:

    set dircmd=/w

    При однократном использовании команды dir можно отменить параметр с помощью переменной среды DIRCMD. Для этого введите параметр, который требуется отменить, в командной строке dir , указав перед ним знак минус. Например:

    Чтобы изменить параметры DIRCMD, используемые по умолчанию, введите следующую команду:

    set= новый_параметр

    Новые параметры по умолчанию останутся в силе для всех последующих команд dir , пока команда set dircmd не задаст новые параметры или не будет перезагружен компьютер.

    Чтобы удалить все параметры по умолчанию, введите следующую команду:

    set dircmd=

    Чтобы просмотреть текущие параметры переменной среды DIRCMD, введите следующую команду:

  • Команда dir с другими параметрами доступна в консоли восстановления.

Примеры

Чтобы вывести подряд все каталоги в алфавитном порядке, в несколько колонок и с паузой после заполнения каждого экрана, убедитесь, что корневой каталог является текущим, и введите следующую команду:

dir /s/w/o/p

Команда dir выводит имя корневого каталога, имена его подкаталогов и имена файлов (включая расширения) в этом каталоге. Затемвыводятся имена подкаталогов и имена файлов в каждом каталоге дерева каталогов.

Для изменения предыдущего примера так, чтобы команда dir не выводила имена каталогов, введите следующую команду:

dir /s/w/o/p/a:-d

Чтобы напечатать список каталогов, введите следующую команду:

ir > prn

Если указать параметр prn , список каталогов отправляется на принтер, подключенный к порту LPT1. Если принтер подключен к другому порту, необходимо заменить параметр prn именем этого порта.

Вывод команды dir также может быть направлен в файл при замене prn на имя файла. Кроме того, можно также ввести путь. Например, для направления вывода команды dir в файл Dir.doc в каталоге Records введите следующую команду:

dir > \records\dir.doc

Если файл Dir.doc не существует, команда dir создаст его при условии наличия каталога Records. Если этот каталог не существует, выводится следующее сообщение:

Ошибка создания файла

Чтобы вывести список всех файлов с расширением.txt во всех каталогах диска C, введите следующую команду:

dir c:\*.txt /w/o/s/p

Команда dir выводит на экран алфавитный список файлов, удовлетворяющих заданному шаблону, в несколько колонок с паузой после заполнения каждого экрана.

DIR - команда вывода списка файлов

Описание команды DIR

Команда DIR выводит список файлов и подкаталогов каталога. Вызванная без параметров команда dir выводит метку тома и серийный номер, за которыми следует список каталогов и файлов на диске, включая их имена, дату и время последнего изменения. А для для просмотра дерева каталогов используется команда TREE .

Для файлов dir выводит также расширение имени и размер в байтах. Команда dir также выводит общее число перечисленных файлов и каталогов, их общий размер и свободное пространство (в байтах) на диске.

Синтаксис и параметры команды DIR

dir [диск:][путь][имя_файла] [...] атрибуты]]порядок_сортировки]] поле_сортировки]] , где

  • [диск:][путь] - Задание диска и каталога, список файлов которого будет выведен.
  • [имя_файла] - Задание файла или группы файлов, сведения о которых требуется вывести.
  • /p - Постраничный вывод сведений, т. е. с паузой после заполнения экрана. Для продолжения просмотра необходимо нажать любую клавишу.
  • /q - Вывод сведений о владельце файла.
  • /w - Вывод сведений в несколько колонок до пяти имен файлов или каталогов в каждой строке.
  • /d - Соответствует /w, но с сортировкой по столбцам.
  • /a [[:] атрибуты] - Выводит имена только тех файлов и каталогов, которые имеют указанные атрибуты. Если параметр /a не указан, команда dir выводит имена всех файлов, за исключением системных и скрытых. Если параметр /a указан без атрибутов, команда dir выводит имена всех файлов, включая скрытые и системные. Ниже приведен список значений, которые могут быть использованы при задании параметра атрибуты. Двоеточие (:) является необязательным. Значения из таблицы могут использоваться в любых комбинациях без пробела между ними.
  • /t [[:]поле_времени] - Задание поля времени для вывода и сортировки. Ниже приведен список значений, которые могут быть использованы при задании параметра поле_времени.
  • /s - Перечисление всех случаев обнаружения определенного имени файла в указанном каталоге и всех его подкаталогах.
  • /b - Перечисление каждого имени файла (включая расширение) или каталога на отдельной строке. При использовании параметра /b заголовочные сведения или сводка не выводятся. Параметр /b отменяет параметр /w.
  • /l - Вывод несортированного списка имен каталогов и имен файлов строчными буквами. Параметр /l не позволяет преобразовывать дополнительные символы в строчные.
  • /n - Вывод списка в расширенном формате с именами файлов в правой части экрана.
  • /x - Вывод сокращенных имен файлов файловых систем NTFS и FAT. Формат совпадает с форматом параметра /n, но сокращенные имена выводятся после полных.
  • /c - Вывод разделителя десятичных разрядов в размере файлов.
  • /? - Отображение справки в командной строке для команды DIR.

Примеры команды DIR

  1. Чтобы вывести подряд все каталоги в алфавитном порядке, в несколько колонок и с паузой после заполнения каждого экрана, убедитесь, что корневой каталог является текущим, и введите следующую команду: dir /s/w/o/p
  2. Команда dir выводит имя корневого каталога, имена его подкаталогов и имена файлов (включая расширения) в этом каталоге. Затем выводятся имена подкаталогов и имена файлов в каждом каталоге дерева каталогов.
  3. Для изменения предыдущего примера так, чтобы команда dir не выводила имена каталогов, введите следующую команду: dir /s/w/o/p/a:-d
  4. Чтобы напечатать список каталогов, введите следующую команду: dir > prn. Если указать параметр prn, список каталогов отправляется на принтер, подключенный к порту LPT1. Если принтер подключен к другому порту, необходимо заменить параметр prn именем этого порта.
  5. Вывод команды dir также может быть направлен в файл при замене prn на имя файла. Кроме того, можно также ввести путь. Например, для направления вывода команды dir в файл Dir.doc в каталоге Records введите следующую команду: dir > \records\dir.doc. Если файл Dir.doc не существует, команда dir создаст его при условии наличия каталога Records.
  6. Чтобы вывести список всех файлов с расширением.txt во всех каталогах диска C, введите следующую команду: dir c:\*.txt /w/o/s/p.

Вывод списка файлов и подкаталогов каталога. Вызванная без параметров команда dir выводит метку тома и серийный номер, за которыми следует список каталогов и файлов на диске, включая их имена, дату и время последнего изменения. Для файлов dir выводит также расширение имени и размер в байтах. Команда dir также выводит общее число перечисленных файлов и каталогов, их общий размер и свободное пространство (в байтах) на диске.

Синтаксис

dir [диск : ][путь ][имя_файла ] [...] [ /p ] [/q ] [/w ] [/d ] [/a [[ : ]атрибуты ]] [/o [[: ]порядок_сортировки ]] [/t [[ : ]поле_сортировки ]] [/s ] [/b ] [/l ] [ /n ] [/x ] [/c ] [/4 ]

Параметры

[диск : ][путь ] Задание диска и каталога, список файлов которого будет выведен. [имя_файла ] Задание файла или группы файлов, сведения о которых требуется вывести. /p Постраничный вывод сведений, т. е. с паузой после заполнения экрана. Для продолжения просмотра необходимо нажать любую клавишу. /q Вывод сведений о владельце файла. /w Вывод сведений в несколько колонок до пяти имен файлов или каталогов в каждой строке. /d Соответствует /w , но с сортировкой по столбцам. /a [[: ] атрибуты ] Выводит имена только тех файлов и каталогов, которые имеют указанные атрибуты. Если параметр /a не указан, команда dir выводит имена всех файлов, за исключением системных и скрытых. Если параметр /a указан без атрибутов , команда dir выводит имена всех файлов, включая скрытые и системные. Ниже приведен список значений, которые могут быть использованы при задании параметра атрибуты . Двоеточие (:) является необязательным. Значения из таблицы могут использоваться в любых комбинациях без пробела между ними. /o [[: ]порядок_сортировки ] Управление порядком сортировки и вывода имен файлов и каталогов командой dir . Если параметр /o , не задан, команда dir выводит имена в том порядке, в котором они записаны в каталоге. Если параметр /o использован без параметра порядок_сортировки , команда dir выводит имена каталогов в алфавитном порядке, затем имена файлов в алфавитном порядке. Двоеточие (:) является необязательным. Ниже приведен список значений, которые могут быть использованы при задании параметра порядок_сортировки . Допускается использование любого их сочетания без пробелов между ними.
Значение Описание
n Сортировка по именам в алфавитном порядке
e Сортировка по расширениям в алфавитном порядке
d Сортировка по дате и времени от ранних к поздним
s Сортировка по размеру от меньших к большим
g Сортировка с группированием каталогов перед файлами
-n Сортировка по именам в обратном алфавитном порядке (от Z к A)
-e Сортировка по расширению в обратном алфавитном порядке (от.ZZZ к.AAA)
-d Сортировка по дате и времени от поздних к ранним
-s Сортировка по размеру от больших к меньшим
-g Сортировка с группировкой каталогов после файлов
/t [[: ]поле_времени ] Задание поля времени для вывода и сортировки. Ниже приведен список значений, которые могут быть использованы при задании параметра поле_времени . /s Перечисление всех случаев обнаружения определенного имени файла в указанном каталоге и всех его подкаталогах. /b Перечисление каждого имени файла (включая расширение) или каталога на отдельной строке. При использовании параметра /b заголовочные сведения или сводка не выводятся. Параметр /b отменяет параметр /w . /l Вывод несортированного списка имен каталогов и имен файлов строчными буквами. Параметр /l не позволяет преобразовывать дополнительные символы в строчные. /n Вывод списка в расширенном формате с именами файлов в правой части экрана. /x Вывод сокращенных имен файлов файловых систем NTFS и FAT. Формат совпадает с форматом параметра /n , но сокращенные имена выводятся после полных. /c Вывод разделителя десятичных разрядов в размере файлов. /4 Отображение года в четырехзначном формате. /? Отображение справки в командной строке.

Примечания

  • Использование нескольких имен_файлов

    Допускается использование нескольких имен_файлов . Разделяйте имена файлов пробелом, запятой или точкой с запятой. Для вывода группы файлов допускается применение подстановочных знаков (? и *) в параметре имя_файла .

  • Использование подстановочных знаков

    Для вывода списка подгруппы файлов и подкаталогов можно использовать подстановочные знаки (? и *).

  • Задание атрибутов файлов для вывода

    Если параметр /a используется более чем с одним значением параметра атрибуты , команда dir выведет имена только тех файлов, все атрибуты которых совпадают с заданными. Например, при использовании параметра /a со значениями атрибутов r и -h в формате /a:r-h или /ar-h команда dir выведет имена файлов, являющихся одновременно скрытыми и защищенными от записи.

  • Указание порядка сортировки имен файлов

    Если указано несколько значений порядка_сортировки , команда dir сортирует имена файлов сначала по первому условию, затем по второму и т. д. Например, если указан ключ /o со значениями e и -s порядка_сортировки в формате /o:e-s или /oe-s , команда dir отсортирует имена каталогов и файлов по расширениям, затем от больших файлов к меньшим и выведет окончательный результат. В результате сортировки по алфавиту файлы без расширений будут идти вначале, затем имена каталогов, а потом имена файлов с расширениями.

  • Использование перенаправления и каналов

    Чтобы перенаправить вывод команды dir в файл с помощью символа (>) или использовать канал (|) для передачи вывода в другую команду, необходимо использовать параметры команды dir /a:-d и /b для вывода только списка имен файлов. Параметр имя_файла с параметрами /b и /s можно использовать, чтобы указать поиск командой dir в текущем каталоге и его подкаталогах всех файлов, соответствующих значению имя_файла . При этом команда dir выведет только имя диска, имя каталога, имя файла и расширение по одному файлу в строке. Чтобы использовать перенаправление с помощью каналов, в файле Autoexec.nt должна быть установлена переменная среды TEMP.

  • Предварительное задание параметров команды dir

    Параметры команды dir могут быть предварительно заданы включением команды set для переменной среды DIRCMD в файл Autoexec.nt. В команде set dircmd может быть использована любая допустимая комбинация параметров команды dir , включая расположение и имя файла.

    Например, чтобы использовать переменную среды DIRCMD для задания вывода в расширенном формате (/w ) по умолчанию, в файле Autoexec.nt необходимо ввести следующую строку:

    При однократном использовании команды dir можно отменить параметр с помощью переменной среды DIRCMD. Для этого введите параметр, который требуется отменить, в командной строке dir , указав перед ним знак минус. Например:

    Чтобы изменить параметры DIRCMD, используемые по умолчанию, введите следующую команду:

    set= новый_параметр

    Новые параметры по умолчанию останутся в силе для всех последующих команд dir , пока команда set dircmd не задаст новые параметры или не будет перезагружен компьютер.

    Чтобы удалить все параметры по умолчанию, введите следующую команду:

    Чтобы просмотреть текущие параметры переменной среды DIRCMD, введите следующую команду:

    Команда set выведет список переменных среды и их параметров. Дополнительные сведения о этой команде смотрите .

  • Команда dir с другими параметрами доступна в консоли восстановления.

Примеры

Чтобы вывести подряд все каталоги в алфавитном порядке, в несколько колонок и с паузой после заполнения каждого экрана, убедитесь, что корневой каталог является текущим, и введите следующую команду:

Команда dir выводит имя корневого каталога, имена его подкаталогов и имена файлов (включая расширения) в этом каталоге. Затем выводятся имена подкаталогов и имена файлов в каждом каталоге дерева каталогов.

Для изменения предыдущего примера так, чтобы команда dir не выводила имена каталогов, введите следующую команду:

dir /s/w/o/p/a:-d

Чтобы напечатать список каталогов, введите следующую команду:

Если указать параметр prn , список каталогов отправляется на принтер, подключенный к порту LPT1. Если принтер подключен к другому порту, необходимо заменить параметр prn именем этого порта.

Вывод команды dir также может быть направлен в файл при замене prn на имя файла. Кроме того, можно также ввести путь. Например, для направления вывода команды dir в файл Dir.doc в каталоге Records введите следующую команду:

dir > \records\dir.doc

Если файл Dir.doc не существует, команда dir создаст его при условии наличия каталога Records. Если этот каталог не существует, выводится следующее сообщение:

Ошибка создания файла

Чтобы вывести список всех файлов с расширением.txt во всех каталогах диска C, введите следующую команду:

dir c:\*.txt /w/o/s/p

Команда dir выводит на экран алфавитный список файлов, удовлетворяющих заданному шаблону, в несколько колонок с паузой после заполнения каждого экрана.

Для вопросов, обсуждений, замечаний, предложений и т. п. можете использовать раздел форума этого сайта (требуется регистрация).

Команда DIR позволяет отобразить список файлов и подкаталогов для указанного каталога. Список может быть отсортирован по множеству критериев, задаваемых параметрами командной строки.

Формат командной строки:

DIR [диск:][путь][имя_файла] атрибуты]] порядок]] /T[[:]время]]

Параметры командной строки:

[диск:][путь][имя_файла] - Диск, каталог и/или файлы, которые следует включить в список. /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 /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:\ /A:-AH - отобразить список скрытых (H) файлов и подкаталогов из корневого каталога диска C: без атрибута "Архивный" (-A)

DIR C: /A:DH - отобразить список скрытых каталогов в корне диска C:

dir c:\ /a:DH /d - тоже самое, но с отображением информации в несколько столбцов, с сортировкой имен в алфавитном порядке. Пример результата:

Том в устройстве C имеет метку C Серийный номер тома: 1884-ABEC Содержимое папки c:\ 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 28.01.2013 16:41 DOCUME~2 DOCUMENTS 15.07.2011 12:00 DOCUME~1 Documents and Settings В примере отображается список из 3-х каталогов:

DOCUMENT - имя каталога содержит 8 символов и не преобразуется в стандарт 8.3

DOCUMENTS - имя содержит 9 символов и в формате 8.3 представлено как DOCUME~2

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

Альтернативные потоки файлов используются для хранения данных, не связанных с содержимым основного потока (собственно содержимого файла) и на практике применяются для привязки дополнительной информации к этому содержимому. Так, например, многие антивирусы хранят в альтернативных потоках контрольные суммы проверенных на заражение файлов, а система безопасности использует их для определения факта скачивания файлов по сети. Подробнее об альтернативных потоках - в статье