Dir файл не найден

Обновлено: 05.07.2024

Возвращает значение типа String, определяющее имя файла, каталога или папки, которое соответствует указанному шаблону, атрибуту файла либо метке тома диска.

Синтаксис

Dir [ (pathname, [ attributes ] ) ]

Синтаксис функции Dir состоит из следующих элементов.

Часть Описание
pathname Необязательный. Строковое выражение, указывающее имя файла; может включать каталог или папку, а также диск. Если файл, указанный параметром pathname, не найден, возвращается строка нулевой длины ("").
attributes Необязательный. Константа или числовое выражение, определяющее атрибуты файла. Если этот параметр опущен, возвращаются файлы, которые соответствуют параметру pathname, но не имеют атрибутов.

Параметры

Аргумент attributes может принимать следующие значения.

Константа Значение Описание
vbNormal 0 (По умолчанию.) Определяет файлы без атрибутов.
vbReadOnly 1 В дополнение к файлам без атрибутов определяет файлы, доступные только для чтения.
vbHidden 2 Определяет скрытые файлы, а также файлы без атрибутов.
vbSystem 4 В дополнение к файлам без атрибутов определяет системные файлы. Недоступно в macOS.
vbVolume 8 Определяет метку тома; если указан какой-либо другой атрибут, параметр vbVolume игнорируется. Недоступно в macOS.
vbDirectory 16 В дополнение к файлам без атрибутов определяет каталоги (папки).
vbAlias 64 Указанное имя файла является псевдонимом. Доступно только в macOS.

Эти константы определены в Visual Basic для приложений и могут использоваться в коде вместо фактических значений.

Примечания

В Microsoft Windows функция Dir поддерживает использование знака умножения (*) и одиночного символа (?) в качестве подстановочных знаков для указания нескольких файлов. В macOS такие знаки воспринимаются как допустимые символы имени файла и не могут использоваться в качестве подстановочных знаков.

Так как macOS не поддерживает использование подстановочных знаков, для определения группы файлов используйте тип файла. Чтобы вместо имен файлов указать тип файла, воспользуйтесь функцией MacID. Например, следующий оператор возвращает имя первого текстового файла в текущей папке:

Чтобы вывести следующий файл в папке, укажите пустую строку:

Если функция MacID используется с функцией Dir в Microsoft Windows, возникает ошибка.

Любое значение атрибута, превышающее 256, считается значением MacID.

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

Функция Dir возвращает первое имя файла, соответствующее значению pathname. Для получения дополнительных имен файлов, соответствующих значению pathname, вызовите функцию Dir повторно без аргументов. Если других соответствий найдено не будет, функция Dir возвратит пустую строку (""). После возврата строки нулевой длины в последующих вызовах необходимо указывать значение pathname, иначе произойдет ошибка.

Значение pathname можно изменить без получения всех имен файлов, соответствующих текущему значению pathname. Однако нельзя осуществить рекурсивный вызов функции Dir. С помощью функции Dir с атрибутом vbDirectory невозможно последовательно возвращать подкаталоги.

В Excel для Mac 2016 исходный вызов функции Dir осуществится успешно. Однако последующие вызовы для итерации по указанному каталогу приведут к ошибке. К сожалению, это известная ошибка.

Поскольку имена файлов возвращаются в произвольном порядке, их можно сохранить в массиве и отсортировать.

См. также

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.

Команда 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 - Выбор поля времени для отображения и сортировки

/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, не поддерживавших длинные имена файлов. Длинные имена преобразуются в короткие с использованием первых шести символов и конструкции

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 определяет, что файл был загружен из Интернет

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

Синтаксис

Параметры

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

Примечания

dir /-w

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

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

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

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

set dircmd=

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

Примеры использования

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

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

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

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

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

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

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

У меня есть простая строка кода, которая должна печатать первую строку файла:

Файл класса с этой строкой находится в c: /users/my/project . Файл с именем "файл" существует в c: /users/my/project . Если я открою CMD, перейдите в c: /users/my/project и запустите

Первая строка распечатана, и все в порядке.

Но если я перехожу к C:/ в CMD и запускаю

Я получаю ответ, что файл "файл" не найден.

Если я переведу "файл" в c:/и снова запустив ту же команду, она будет найдена.

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

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

Что касается свойства user.dir , user.dir с документацией для класса File . Говорится

Имя пути, будь то абстрактное или в виде строки, может быть абсолютным или относительным. Абсолютное имя пути завершено, поскольку никакая другая информация не требуется, чтобы найти файл, который он обозначает. Относительное имя пути, напротив, должно интерпретироваться с точки зрения информации, взятой из другого пути. По умолчанию классы в пакете java.io всегда разрешают относительные пути к текущему каталогу пользователей. Этот каталог называется системным свойством user.dir и обычно является каталогом, в котором была вызвана виртуальная машина Java.

РЕДАКТИРОВАТЬ

Я сделал тест на своей машине и обнаружил, что программа чтения файлов находится в каталоге, из которого было запущено приложение (что может не совпадать с свойством user.dir ). Смотри ниже:

Запустив это из каталога, в котором нет файла, я получаю

Если вы запускаете его из каталога, в котором есть файл, который я ищу, я получаю

ДРУГОЕ ИЗМЕНЕНИЕ

Я использую openjdk 8, поэтому в моем случае логика выглядит следующим образом: из своего источника:

Вывод списка файлов и подкаталогов каталога. Вызванная без параметров команда 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 выводит имена всех файлов, включая скрытые и системные. Ниже приведен список значений, которые могут быть использованы при задании параметра атрибуты. Двоеточие (:) является необязательным. Значения из таблицы могут использоваться в любых комбинациях без пробела между ними.
Значение Описание
h Скрытые файлы
s Системные файлы
d Каталоги
a Файлы, готовые к архивированию
r Файлы, доступные только для чтения
-h Файлы, не являющиеся скрытыми
-s Файлы, не являющиеся системными
-d Только файлы (не каталоги)
-a Файлы, не изменявшиеся после последнего архивирования
-r Файлы, не имеющие атрибута «Только чтение»
/o [[:]порядок_сортировки] Управление порядком сортировки и вывода имен файлов и каталогов командой dir. Если параметр /o, не задан, команда dir выводит имена в том порядке, в котором они записаны в каталоге. Если параметр /o использован без параметра порядок_сортировки, команда dir выводит имена каталогов в алфавитном порядке, затем имена файлов в алфавитном порядке. Двоеточие (:) является необязательным. Ниже приведен список значений, которые могут быть использованы при задании параметра порядок_сортировки. Допускается использование любого их сочетания без пробелов между ними.
Значение Описание
n Сортировка по именам в алфавитном порядке
e Сортировка по расширениям в алфавитном порядке
d Сортировка по дате и времени от ранних к поздним
s Сортировка по размеру от меньших к большим
g Сортировка с группированием каталогов перед файлами
-n Сортировка по именам в обратном алфавитном порядке (от Z к A)
-e Сортировка по расширению в обратном алфавитном порядке (от .ZZZ к .AAA)
-d Сортировка по дате и времени от поздних к ранним
-s Сортировка по размеру от больших к меньшим
-g Сортировка с группировкой каталогов после файлов
/t [[:]поле_времени] Задание поля времени для вывода и сортировки. Ниже приведен список значений, которые могут быть использованы при задании параметра поле_времени.
Значение Описание
c Создание
a Последнее обращение
w Последняя запись
/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 могут быть предварительно заданы включением команды set для переменной среды DIRCMD в файл Autoexec.nt. В команде set dircmd может быть использована любая допустимая комбинация параметров команды dir, включая расположение и имя файла.

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

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

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

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

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

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

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

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

Примеры

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

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

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

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

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

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

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

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

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

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

Новый раздел о средствах командной строки в рамках этого же проекта расположен здесь

Читайте также: