Cmd dir полный путь и атрибуты файлов. Справка по команде dir и ее параметрам
Примерно два десятилетия назад не было никакого меню «Пуск » или панели задач. Дружелюбный графический интерфейс, который мы знаем, тогда не существовал, а вместо него был черный экран с мигающим курсором. Но если нужно получить доступ к некоторым элементам Windows , вам все равно придется открыть командную строку или CMD :
Если вы никогда не использовали командную строку, это руководство поможет вам освоить ее и расскажет о некоторых CMD командах , которые вы должны знать на случай возникновения чрезвычайных ситуаций.
Для доступа к ней в Windows 7 или выше вы можете набрать в панели поиска меню «Пуск » «cmd » или «командная строка ». Также можно найти ее здесь: Меню «Пуск»- Все программы –Стандартные — Командная строка . Полный список параметров каждой из приведенных ниже команд вы можете найти на сайте Microsoft .
Обратите внимание, что команды не чувствительны к регистру и для их выполнения вам нужно нажать Enter .
Основные команды командной строки
DIR — сокращение от Directory , эта CMD команда для новичка выводит список всех файлов и папок в определенном каталоге. А также их размер, расширение и свободное пространство, оставшееся на диске. Команда может быть изменена с помощью дополнительных параметров, таких как DIR /р (выводит список по страницам ), DIR /q (выводит информацию о владельце сайта ), DIR /w (выводит список в расширенном формате с максимальным количеством файлов в одной строке ), DIR / d (выводит список в расширенном формате с разбивкой на столбцы ), DIR /n (выводит длинный список одной строкой ), DIR /l (выводит несортированный список имен каталогов и файлов в нижнем регистре ), DIR /b (выводит список файлов без дополнительной информации ). DIR /s выводит список файлов и директорий данного каталога, а также всех подкаталогов. Введя DIR/? , вы увидите список всех доступных параметров.
Команда CD или CHDIR (Change Directory ) предназначена для того, чтобы сменить каталог. Команда выполняет несколько операций. CD перемещает вас на самый верх дерева каталогов. CD .. перемещает вас в родительский каталог по отношению к текущему. CD имя-каталога перемещает вас в этот каталог. Введите CD , чтобы вывести на экран имя текущего каталога.
MD или MKDIR (Make Directory ) позволяет создать каталог (папку ). Чтобы создать каталог, используйте следующий синтаксис: MD имя-каталога .
CLS очищает экран. Эта команда CMD в Windows применяется, если эмулятор командной строки заполнен перечнем команд и их операций.
EDIT имя-файла позволяет изменять содержимое файла.
Команда DEL позволяет удалить один или несколько файлов. В качестве альтернативы можно использовать команду ERASE . Для удаления файла используйте синтаксис DEL имя-файла .
Если вы хотите удалить все файлы с определенным расширением, то введите DEL *.doc , и из текущего каталога будут удалены все файлы с расширением doc . DEL *.* удаляет все файлы из текущего каталога, поэтому будьте осторожны с этой командой.
RD или RMDIR — вы можете использовать эту команду, чтобы удалить папку, но папка должна быть пустой. Синтаксис довольно прост. Введите RD имя-папки . Если вы хотите удалить папку, которая не является пустой, вы можете использовать RD / S имя-папки . Будьте осторожны с этой командой, так как она удаляет папку и все ее содержимое без возможности восстановления.
RENAME , или REN переименовывает файл или каталог. Синтаксис этой команды CMD управления компьютером следующий: RENAME текущее-имя новое-имя . Например, если вы хотите переименовать файл с именем iPhone.txt в iPad.txt , введите RENAME iPhone.txt iPad.txt .
MOVE
позволяет переместить один или несколько файлов из одного каталога в другой. Например, если вы хотите переместить файл 1.txt
размещенный в текущей директории в папку с именем Numericals
внутри текущего каталога, введите MOVE 1.txt Numericals
.
Если вы пытались переименовать директорию (папку
) с помощью команды RENAME
приведенным выше способом, то знаете, что это не работает. В этом нам поможет команда MOVE
, так как она также может быть использована для переименования каталогов. Введите MOVE
текущее-имя новое-имя, где текущее имя — это имя директории в текущей папке.
Команда COPY позволяет скопировать один или несколько файлов из одного места в другое. Команда позволяет объединять файлы одного и того же типа. Давайте посмотрим на различные примеры применения команды COPY :
- COPY имя-файла имя-папки скопирует файл имя-файла в уже существующую папку;
- COPY имя-файла новое-имя-файла создает копию файла с новым именем;
- COPY *.doc Word копирует все файлы с расширением .doc в папку с именем Word .
CMD основная команда XCOPY предназначена для файлов и каталогов, включая подкаталоги. Простейший вариант ее использования — скопировать все файлы с одного диска на другой. Синтаксис: XCOPY Исходный-диск: Диск-назначения: /e , где параметр /е позволяет копировать все подкаталоги, даже если они пусты. Используйте /s , чтобы запретить копирование пустых директорий. Вы можете использовать имена папок исходного диска или диска назначения, чтобы просто скопировать все содержимое одной папки в другую.
Дополнительные команды
Команда FORMAT в CMD позволяет стереть информацию с винчестера или подготовить его для копирования данных, если вы установили новый диск. Синтаксис для использования команды: FORMAT диск: . Если вы хотите переформатировать конкретный диск под конкретную файловую систему, вы можете сделать это с помощью команды: FORMAT диск: / FS: файловая-система , где файловая-система может быть: FAT , FAT32 или NTFS . После применения команды все данные с диска будут бесследно стерты.
FC — используется для сравнения двух файлов друг с другом. Предположим, у вас есть два файла gadgets360_1.txt и gadgets360_2.txt . Чтобы сравнить их, нужно ввести следующую команду: FC gadgets360_1.txt gadgets360_2.txt .
IPCONFIG выводит подробную информацию о сетевых настройках: IP-адрес , а также сообщает тип сетевого соединения вашего компьютера (с помощью Wi-Fi или Ethernet ). Введите IPCONFIG / ALL , чтобы получить обзор всех сетевых настроек, включая то, какие DNS-серверы вы используете. Введите IPCONFIG / RENEW , чтобы получить новый IP-адрес с сервера DHCP . Это может помочь, если у вас возникли проблемы с подключением к интернету.
Вывод списка файлов и подкаталогов каталога. Вызванная без параметров команда 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 | Сортировка с группировкой каталогов после файлов |
Примечания
- Использование нескольких имен_файлов
Допускается использование нескольких имен_файлов . Разделяйте имена файлов пробелом, запятой или точкой с запятой. Для вывода группы файлов допускается применение подстановочных знаков (? и *) в параметре имя_файла .
- Использование подстановочных знаков
Для вывода списка подгруппы файлов и подкаталогов можно использовать подстановочные знаки (? и *).
- Задание атрибутов файлов для вывода
Если параметр /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 выводит также расширение имени и размер в байтах. Команда 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 выводит имена каталогов в алфавитном порядке, затем — имена файлов в алфавитном порядке. Двоеточие (:) является необязательным. Ниже приведен список значений, которые могут быть использованы при задании параметра порядок_сортировки . Допускается использование любого их сочетания без пробелов между ними.Значение | Описание |
---|---|
Сортировка по именам в алфавитном порядке |
|
Сортировка по расширениям в алфавитном порядке |
|
Сортировка по дате и времени от ранних к поздним |
|
Сортировка по размеру от меньших к большим |
|
Сортировка с группированием каталогов перед файлами |
|
Сортировка по именам в обратном алфавитном порядке (от Z к A) |
|
Сортировка по расширению в обратном алфавитном порядке (от.ZZZ к.AAA) |
|
Сортировка по дате и времени от поздних к ранним |
|
Сортировка по размеру от больших к меньшим |
|
Сортировка с группировкой каталогов после файлов |
Примечания
- Использование нескольких имен_файлов
Допускается использование нескольких имен_файлов . Разделяйте имена файлов пробелом, запятой или точкой с запятой. Для вывода группы файлов допускается применение подстановочных знаков (? и *) в параметре имя_файла .
- Использование подстановочных знаков
Для вывода списка подгруппы файлов и подкаталогов можно использовать подстановочные знаки (? и *).
- Задание атрибутов файлов для вывода
Если параметр /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 не сказываются ни ущербный механизм поиска Microsoft, ни ограничения проводника. Хотя в утилите Dir недостижимы некоторые визуальные функции проводника, с ее помощью вы можете найти требуемые файлы, а затем по необходимости выполнить очистку средствами проводника.
По умолчанию утилита Dir отображает только видимые файлы в текущей папке. Тем не менее, воспользовавшись масками и имеющимися ключами, можно найти практически любой файл. К примеру, если вам нужно найти все исполняемые файлы на заданном жестком диске, откройте окно командной строки в корневой папке жесткого диска и введите команду:
Dir *.EXE /S
Конструкция *.ЕХЕ указывает утилите Dir искать все файлы с расширением EXE, а ключ IS - выполнять поиск не только в текущей папке, но и во всех ее вложенных папках. Ниже перечислены наиболее употребительные ключи утилиты Dir.
- /А - вывод файлов с определенным атрибутом. Чтобы задать атрибут, необходимо добавить к ключу соответствующую букву:
- А - архивные файлы;
- D - папки;
- H - скрытые файлы;
- R - файлы для чтения;
- S - системные файлы.
Если вы, напротив, не хотите отображать файлы с заданным атрибутом, то воспользуйтесь знаком - (минус). Например, чтобы найти все файлы только для чтения, но без системных файлов, необходимо указать ключи /AR и /А-S.
- /О - сортировка файлов согласно выбранному критерию:
- D - по дате (начиная с самых старых);
- Е - по расширению;
- С - по группе (начиная с групповых папок);
- N - по имени;
- S - по размеру (начиная с самых маленьких).
Порядок сортировки можно изменить при помощи знака - (минус). Например, чтобы сначала вывести самые новые файлы, следует указать ключ /O-D.
- /Р - пауза при каждом обновлении экрана. Эта пауза дает возможность просмотреть сгенерированные результаты вывода.
- /Q - вывод помимо стандартной информации имен владельцев файлов.
- /S - отображение информации обо всех вложенных папках в дополнение к информации о текущей папке.
- D - вывод информации о дате:
- C - дата создания;
- L - дата последнего доступа;
- W - дата последней модификации.
Например, чтобы вывести для файлов даты их создания, следует указать ключ /ТС.
- /W, /D и /В - выбор способа отображения файлов. Все три ключа удаляют вспомогательную информацию и выводят только имена файлов. Ключ /W отображает имена файлов в максимально возможном количестве столбцов, умещающихся на экране, сортируя файлы по строкам. Ключ /D придает отображаемым файлам тот же вид, что и /W, однако файлы сортируются по столбцам. Ключ /В выводит имена файлов в одну строку - такой формат особенно полезен для перенаправления результатов работы утилиты Dir в файл для последующего анализа.
Сохранение результатов выполнения команды
Путем перенаправления вывода вы можете сохранить результаты работы любой утилиты командной строки для последующей обработки. Например, результаты работы утилиты Dir можно сохранить в текстовом файле, который будет использован другим приложением или станет частью сценария.
Перенаправление вывода осуществляется с помощью символов > и >>. Символ > всегда создает новый файл, а символ >> добавляет результаты в существующий файл, а при отсутствии файла создает новый.
Чтобы перенаправить результаты работы утилиты в файл, необходимо добавить к ней нужный символ и имя файла. Например, команда Dir /B >> DirOut.TXT помещает информацию, генерируемую утилитой Dir, в файл DirOut.TXT.
В продолжение предыдущей статьи, мы рассмотрим поиск файлов через командную строку с помощью утилиты 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.