Файлы — cmd. Работа с файлами из консоли. Часть 2. Move cmd пример


cmd - Как перенести все файлы из одной папки в другую с помощью командной строки?

Вы можете использовать move для этого. В документации из help move указано:

Moves files and renames files and directories. To move one or more files: MOVE [/Y | /-Y] [drive:][path]filename1[,...] destination To rename a directory: MOVE [/Y | /-Y] [drive:][path]dirname1 dirname2 [drive:][path]filename1 Specifies the location and name of the file or files you want to move. destination Specifies the new location of the file. Destination can consist of a drive letter and colon, a directory name, or a combination. If you are moving only one file, you can also include a filename if you want to rename the file when you move it. [drive:][path]dirname1 Specifies the directory you want to rename. dirname2 Specifies the new name of the directory. /Y Suppresses prompting to confirm you want to overwrite an existing destination file. /-Y Causes prompting to confirm you want to overwrite an existing destination file. The switch /Y may be present in the COPYCMD environment variable. This may be overridden with /-Y on the command line. Default is to prompt on overwrites unless MOVE command is being executed from within a batch script.

См. следующую стенограмму для примера, где она первоначально показывает каталоги qq1 и qq2 как имеющие три и без файлов соответственно. Затем мы делаем move, и мы обнаруживаем, что три файла были перенесены с qq1 на qq2, как ожидалось.

C:\Documents and Settings\Pax\My Documents>dir qq1 Volume in drive C is Primary Volume Serial Number is 04F7-0E7B Directory of C:\Documents and Settings\Pax\My Documents\qq1 20/01/2011 11:36 AM <DIR> . 20/01/2011 11:36 AM <DIR> .. 20/01/2011 11:36 AM 13 xx1 20/01/2011 11:36 AM 13 xx2 20/01/2011 11:36 AM 13 xx3 3 File(s) 39 bytes 2 Dir(s) 20,092,547,072 bytes free C:\Documents and Settings\Pax\My Documents>dir qq2 Volume in drive C is Primary Volume Serial Number is 04F7-0E7B Directory of C:\Documents and Settings\Pax\My Documents\qq2 20/01/2011 11:36 AM <DIR> . 20/01/2011 11:36 AM <DIR> .. 0 File(s) 0 bytes 2 Dir(s) 20,092,547,072 bytes free

 

C:\Documents and Settings\Pax\My Documents>move qq1\* qq2 C:\Documents and Settings\Pax\My Documents\qq1\xx1 C:\Documents and Settings\Pax\My Documents\qq1\xx2 C:\Documents and Settings\Pax\My Documents\qq1\xx3

 

C:\Documents and Settings\Pax\My Documents>dir qq1 Volume in drive C is Primary Volume Serial Number is 04F7-0E7B Directory of C:\Documents and Settings\Pax\My Documents\qq1 20/01/2011 11:37 AM <DIR> . 20/01/2011 11:37 AM <DIR> .. 0 File(s) 0 bytes 2 Dir(s) 20,092,547,072 bytes free C:\Documents and Settings\Pax\My Documents>dir qq2 Volume in drive C is Primary Volume Serial Number is 04F7-0E7B Directory of C:\Documents and Settings\Pax\My Documents\qq2 20/01/2011 11:37 AM <DIR> . 20/01/2011 11:37 AM <DIR> .. 20/01/2011 11:36 AM 13 xx1 20/01/2011 11:36 AM 13 xx2 20/01/2011 11:36 AM 13 xx3 3 File(s) 39 bytes 2 Dir(s) 20,092,547,072 bytes free

qaru.site

cmd. Работа с файлами из консоли. Часть 2.

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

  • Перемещать файлы.
  • Переименовывать файлы.
  • Выводить содержимое файлов в консоль.
  • Записывать в файл (txt) результат выполнения команды.

Как всегда, все команды будут представлены Вашему вниманию в сопровождении коротких, но ясных описаниях, а так же будут прилагаться «Пошаговые» скриншоты.

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

Как переместить файл через консоль?

Для перемещения файлов используется команда под названием «MOVE». Что бы переместить файл из корня диска «C:\ Move.txt» в папку, в моём случаи это «С:\Test_Move» пишем в консоль:

Результат выполнения команды. Файл «Move.txt» был перемещён в папку «Test_Move»

Если Вам нужно переместить все файлы с конкретным расширением, то в этом случаи стоит писать так:

Для примера я создал 3 файла «Move_1.txt, Move_2.txt и Move_3.txt» Как видно из скриншота выше, все три файла были перемещённых. В этом можно убедится не закрывая консоль.

Для проверки используем команду «DIR»

С перемещением файлов на этом все. Но, если в каталоге куда нужно переместить файл уже есть такой? То пользователь получит сообщения, в котором его спросят подтвердить, перезаписать файл или нет.

Если ввести символ «Y» то файл будет перезаписан. При этом содержимое уже имеющегося файла в каталоге «C:\Test_Move\» будут потеряны.

Если ввести символ «N» файл не будет перемещён.

Если ввести «ALL» то будут перемещены и перезаписаны все файлы с конкретным расширением. При этом, также, содержимое файлов в директории «C:\Test_Move\» будут потеряны.

Примечание: За место «ALL» можно просто ввести букву «А» результат будет додже.

Что бы отключить предупреждения используется ключик «/Y»

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

Как переименовать файл через cmd.exe?

Для того, чтобы переименовать существующий файл используется команда «RENAME» Я создал файл с именем «test.txt» в корне диска «С:\» что бы его переименовать, скажем в «NEW_Name.txt» пишем в консоли.

Файл «test.txt» будет переименован.

Примечание: Команду «RENAME» можно писать короче, просто «REN» от этого результат не изменится.

Можно сменить расширения у всех файлов в каталоге, например с «txt» на «cmd». Для этого делаем так:

Теперь уже в знакомой нам папке «Test_Move» все 3(три) файла приобретут расширение «cmd» за место «txt»

Как вывести содержимое файла в консоль?

Если появилась необходимость просмотреть содержимое файла прямо в cmd. Для этого пользуемся командой «TYPE» Я создал файл и написал в нём адрес своего блога. Теперь попробуем просмотреть данный файл из консоли, не запуская его обычном, привычным образом.

В общем все просто. Но как быть с файлами большего размера, где много информации? В этак случаи содержимое файла нужно выводить с паузой, чтобы просмотреть его полностью.

Для этого пишем так:

Для примера взял текст с первого попавшегося забугорного сайта.

В конце добавляем «| more» таким образом содержимое файла будет выводится не полностью а отрывками, чтобы просмотреть следующею часть файла жмём «Enter»

Как записать в файл результат выполнения команды?

Для примера запишем в файл результат команды «DIR» В консоль пишем:

Обратите внимание на символ «>» он то и играет здесь главную роль. В итоге появится файл на диске «C:\» с именем «Save.txt» куда будет записан результат выполнения команды.

Если Вам понадобится записать результат команды «DIR» ещё раз, то файл «Save.txt» будет перезаписан и ранние содержимое файла будет удалено!

Что бы этого избежать и просто добавить новый результат не удаляя старый, стоит использовать символ «>» два раза, то есть вот так:

Теперь файл не будет перезаписан, в него просто добавится новый результат в конец файла.

На этом я пожалуй закончу пост, и отправлюсь праздновать первый день рождения сына, ему сегодня исполняется один годик!!!

Спасибо за внимание!

winkomp.ru

Основные команды (Windows cmd) Windows Статьи

Полный список команд можно вывести набрав HELP в командной строке.

Команда CD

Текущий каталог можно изменить с помощью команды

CD [диск:][путь\]

Путь к требуемому каталогу указывается с учетом приведенных выше замечаний. Например, команда CD \ выполняет переход в корневой каталог текущего диска. Если запустить команду CD без параметров, то на экран будут выведены имена текущего диска и каталога.

Команда COPY

Одной из наиболее часто повторяющихся задач при работе на компьютере является копирование и перемещение файлов из одного места в другое. Для копирования одного или нескольких файлов используется команда COPY.

Синтаксис этой команды:

COPY [/A|/B] источник [/A|/B] [+ источник [/A|/B] [+ ...]] [результат [/A|/B]] [/V][/Y|/–Y]

Краткое описание параметров и ключей команды COPY приведено в таблице.

Таблица 1.1. Параметры и ключи команды COPY

Параметр

Описание

источник

Имя копируемого файла или файлов

/A

Файл является текстовым файлом ASCII, то есть конец файла обозначается символом с кодом ASCII 26 (<Ctrl>+<Z>)

/B

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

результат

Каталог для размещения результата копирования и/или имя создаваемого файла

/V

Проверка правильности копирования путем сравнения файлов после копирования

/Y

Отключение режима запроса подтверждения на замену файлов

/-Y

Включение режима запроса подтверждения на замену файлов

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

Копирование файла abc.txt из текущего каталога в каталог D:\PROGRAM под тем же именем:

COPY abc.txt D:\PROGRAM

Копирование файла abc.txt из текущего каталога в каталог D:\PROGRAM под новым именем def.txt:

COPY abc.txt D:\PROGRAM\def.txt

Копирование всех файлов с расширением txt с диска A: в каталог 'Мои документы' на диске C:

COPY A:\*.txt "C:\Мои документы"

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

COPY A:\*.*

В качестве источника или результата при копировании можно указывать имена не только файлов, но и устройств компьютера. Например, для того, чтобы распечатать файл abc.txt на принтере, можно воспользоваться командой копирования этого файла на устройство PRN: COPY abc.txt PRN

Другой интересный пример: создадим новый текстовый файл и запишем в него информацию, без использования текстового редактора. Для этого достаточно ввести команду COPY CON my.txt, которая будет копировать то, что вы набираете на клавиатуре, в файл my.txt (если этот файл существовал, то он перезапишется, иначе — создастся). Для завершения ввода необходимо ввести символ конца файла, то есть нажать клавиши <Ctrl>+<Z>.

Команда COPY может также объединять (склеивать) нескольких файлов в один. Для этого необходимо указать единственный результирующий файл и несколько исходных. Это достигается путем использования групповых знаков (? и *) или формата файл1 + файл2 + файл3. Например, для объединения файлов 1.txt и 2.txt в файл 3.txt можно задать следующую команду:

COPY 1.txt+2.txt 3.txt

Объединение всех файлов с расширением dat из текущего каталога в один файл all.dat может быть произведено так:

COPY /B *.dat all.dat

Ключ /B здесь используется для предотвращения усечения соединяемых файлов, так как при комбинировании файлов команда COPY по умолчанию считает файлами текстовыми.

Если имя целевого файла совпадает с именем одного из копируемых файлов (кроме первого), то исходное содержимое целевого файла теряется. Если имя целевого файла опущено, то в его качестве используется первый файл из списка. Например, команда COPY 1.txt+2.txt добавит к содержимому файла 1.txt содержимое файла 2.txt. Командой COPY можно воспользоваться и для присвоения какому-либо файлу текущей даты и времени без модификации его содержимого. Для этого нужно ввести команду типа

COPY /B 1.txt +,,

Здесь запятые указывают на пропуск параметра приемника, что и приводит к требуемому результату.

Команда COPY имеет и свои недостатки. Например, с ее помощью нельзя копировать скрытые и системные файлы, файлы нулевой длины, файлы из подкаталогов. Кроме того, если при копировании группы файлов COPY встретит файл, который в данный момент нельзя скопировать (например, он занят другим приложением), то процесс копирования полностью прервется, и остальные файлы не будут скопированы.

Команда XCOPY

Указанные при описании команды COPY проблемы можно решить с помощью команды XCOPY, которая предоставляет намного больше возможностей при копировании. Необходимо отметить, правда, что XCOPY может работать только с файлами и каталогами, но не с устройствами.

Синтаксис этой команды:

XCOPY источник [результат] [ключи]

Команда XCOPY имеет множество ключей, мы коснемся лишь некоторых из них. Ключ /D[:[дата]] позволяет копировать только файлы, измененные не ранее указанной даты. Если параметр дата не указан, то копирование будет производиться только если источник новее результата. Например, команда

XCOPY "C:\Мои документы\*.*" "D:\BACKUP\Мои документы" /D

скопирует в каталог 'D:\BACKUP\Мои документы' только те файлы из каталога 'C:\Мои документы', которые были изменены со времени последнего подобного копирования или которых вообще не было в 'D:\BACKUP\Мои документы'.

Ключ /S позволяет копировать все непустые подкаталоги в каталоге-источнике. С помощью же ключа /E можно копировать вообще все подкаталоги, включая и пустые.

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

Ключ /I важен для случая, когда копируются несколько файлов, а файл назначения отсутствует. При задании этого ключа команда XCOPY считает, что файл назначения должен быть каталогом. Например, если задать ключ /I в команде копирования всех файлов с расширением txt из текущего каталога в несуществующий еще подкаталог TEXT,

XCOPY *.txt TEXT /I

то подкаталог TEXT будет создан без дополнительных запросов.

Ключи /Q, /F и /L отвечают за режим отображения при копировании. При задании ключа /Q имена файлов при копировании не отображаются, ключа /F — отображаются полные пути источника и результата. Ключ /L обозначает, что отображаются только файлы, которые должны быть скопированы (при этом само копирование не производится).

С помощью ключа /H можно копировать скрытые и системные файлы, а с помощью ключа /R — заменять файлы с атрибутом "Только для чтения". Например, для копирования всех файлов из корневого каталога диска C: (включая системные и скрытые) в каталог SYS на диске D:, нужно ввести следующую команду:

XCOPY C:\*.* D:\SYS /H

Ключ /T позволяет применять XCOPY для копирования только структуры каталогов источника, без дублирования находящихся в этих каталогах файлов, причем пустые каталоги и подкаталоги не включаются. Для того, чтобы все же включить пустые каталоги и подкаталоги, нужно использовать комбинацию ключей /T /E.

Используя XCOPY можно при копировании обновлять только уже существующие файлы (новые файлы при этом не записываются). Для этого применяется ключ /U. Например, если в каталоге C:\2 находились файлы a.txt и b.txt, а в каталоге C:\1 — файлы a.txt, b.txt, c.txt и d.txt, то после выполнения команды

XCOPY C:\1 C:\2 /U

в каталоге C:\2 по-прежнему останутся лишь два файла a.txt и b.txt, содержимое которых будет заменено содержимым соответствующих файлов из каталога C:\1.Если с помощью XCOPY копировался файл с атрибутом "Только для чтения", то по умолчанию у файла-копии этот атрибут снимется. Для того, чтобы копировать не только данные, но и полностью атрибуты файла, необходимо использовать ключ /K.

Ключи /Y и /-Y определяют, нужно ли запрашивать подтверждение перед заменой файлов при копировании. /Y означает, что такой запрос нужен, /-Y — не нужен.

Команда DIR

Еще одной очень полезной командой является DIR [диск:][путь][имя_файла] [ключи], которая используется для вывода информации о содержимом дисков и каталогов. Параметр [диск:][путь] задает диск и каталог, содержимое которого нужно вывести на экран. Параметр [имя_файла] задает файл или группу файлов, которые нужно включить в список. Например, команда

DIR C:\*.bat

выведет на экран все файлы с расширением bat в корневом каталоге диска C:. Если задать эту команду без параметров, то выводится метка диска и его серийный номер, имена (в коротком и длинном вариантах) файлов и подкаталогов, находящихся в текущем каталоге, а также дата и время их последней модификации. После этого выводится число файлов в каталоге, общий объем (в байтах), занимаемый файлами, и объем свободного пространства на диске. Например:

Том в устройстве C имеет метку PHYS1_PART2 Серийный номер тома: 366D-6107 Содержимое папки C:\aditor . <ПАПКА> 25.01.00 17:15 . .. <ПАПКА> 25.01.00 17:15 .. TEMPLT02 DAT 227 07.08.98 1:00 templt02.dat UNINST1 000 1 093 02.03.99 8:36 UNINST1.000 HILITE DAT 1 082 18.09.98 18:55 hilite.dat TEMPLT01 DAT 48 07.08.98 1:00 templt01.dat UNINST0 000 40 960 15.04.98 2:08 UNINST0.000 TTABLE DAT 357 07.08.98 1:00 ttable.dat ADITOR EXE 461 312 01.12.99 23:13 aditor.exe README TXT 3 974 25.01.00 17:26 readme.txt ADITOR HLP 24 594 08.10.98 23:12 aditor.hlp ТЕКСТО~1 TXT 0 11.03.01 9:02 Текстовый файл.txt 11 файлов 533 647 байт 2 папок 143 261 696 байт свободно

С помощью ключей команды DIR можно задать различные режимы расположения, фильтрации и сортировки. Например, при использовании ключа /W перечень файлов выводится в широком формате с максимально возможным числом имен файлов или каталогов на каждой строке. Например:

Том в устройстве C имеет метку PHYS1_PART2 Серийный номер тома: 366D-6107 Содержимое папки C:\aditor [.] [..] TEMPLT02.DAT UNINST1.000 HILITE.DAT TEMPLT01.DAT UNINST0.000 TTABLE.DAT ADITOR.EXE README.TXT ADITOR.HLP ТЕКСТО~1.TXT 11 файлов 533 647 байт 2 папок 143 257 600 байт свободно

С помощью ключа /A[[:]атрибуты] можно вывести имена только тех каталогов и файлов, которые имеют заданные атрибуты (R — "Только чтение", A — "Архивный", S — "Системный", H — "Скрытый", префикс "–" имеет значение НЕ). Если ключ /A используется более чем с одним значением атрибута, будут выведены имена только тех файлов, у которых все атрибуты совпадают с заданными. Например, для вывода имен всех файлов в корневом каталоге диска C:, которые одновременно являются скрытыми и системными, можно задать команду

DIR C:\ /A:HS

а для вывода всех файлов, кроме скрытых — команду

DIR C:\ /A:-H

Отметим здесь, что атрибуту каталога соответствует буква D, то есть для того, чтобы, например, вывести список всех каталогов диска C:, нужно задать команду

DIR C: /A:D

Ключ /O[[:]сортировка] задает порядок сортировки содержимого каталога при выводе его командой DIR. Если этот ключ опущен, DIR печатает имена файлов и каталогов в том порядке, в котором они содержатся в каталоге. Если ключ /O задан, а параметр сортировка не указан, то DIR выводит имена в алфавитном порядке. В параметре сортировка можно использовать следующие значения: N — по имени (алфавитная), S — по размеру (начиная с меньших), E — по расширению (алфавитная), D — по дате (начиная с более старых), A — по дате загрузки (начиная с более старых), G — начать список с каталогов. Префикс "–" означает обратный порядок. Если задается более одного значения порядка сортировки, файлы сортируются по первому критерию, затем по второму и т.д.

Ключ /S означает вывод списка файлов из заданного кат

frantsuzzz.com

[CMD] Операторы выбора в командной строке Windows

CHOICE [/C список] [/N] [/CS] [/T тайм-аут /D элемент] [/M текст]

Описание.Эта программа позволяет выбирать элемент из списка элементови возвращает индекс выбранного элемента.

Параметры:/C список Создаваемый список выбираемых элементов.Список по умолчанию "YN".

/N Скрытие списка элементов в приглашении.Перед приглашением выводится сообщениеи элементы остаются доступными для выбора.

/CS Включение учета регистра при выборе элементов.По умолчание в программе регистр символов не учитывается.

/T тайм-аут Число секунд перед выбором элемента по умолчанию.Допустимыми являются значения от 0 до 9999.Если указан 0, отсутствует пауза перед выборомэлемента по умолчанию.

/D элемент Элемент, выбираемый по умолчанию через nnnn секунд.Символ должен присутствовать в наборе элементовв параметре /C; значение nnnn задается в параметре /T.

/M текст Сообщение, отображаемое передприглашением. Если не указано, программавыводит только приглашение.

/? Вывод справки по использованию.

ПримечаниеПеременная среды ERRORLEVEL получает значение индексаклавиши, соответствующей выбранному элементу. Первый элементв списке возвращает значение 1, второй - 2 и т.д.Если пользователь нажимает клавишу, не соответствующую допустимомувыбору, подается звуковой сигнал. Если обнаруживается ошибка,возвращается значение ERRORLEVEL 255. Если нажимаются клавишиCTRL+BREAK или CTRL+C, программа возвращает значение ERRORLEVEL 0.При использовании параметров ERRORLEVEL в пакетной программе ихследует перечислять по убыванию.

Примеры:CHOICE /?CHOICE /C YNC /M "Y - Да, N - Нет, C - Отмена."CHOICE /T 10 /C ync /CS /D yCHOICE /C ab /M "a" для выбора параметра 1 и "b" для выбора параметра 2.CHOICE /C ab /N /M "a" для выбора параметра 1 и "b" для выбора параметра 2.

safezone.cc

Некоторые команды cmd

Полный список команд вы можете посмотреть, набрав в командной строке help.

Очистка экрана монитора

cls - В результате ее выполнения экран монитора очищается.

Установка даты в компьютере

date [текущая дата]

Если вводится команда без параметров, то выводится текущая системная дата и делается запрос на ввод новой даты: Enter new date (mm-dd-yy):

Чтобы этот запрос не выводился, необходимо вывести команду date с параметром /t.

Установка времени в компьютере

time [часы:минуты]

Если вводится команда без параметров, то выводится текущее время и делается запрос на ввод нового значения времени: Enter new time :

Вывод номера версии DOS - ver

Вывод информации об оперативной памяти - mem

Изменение вида приглашения DOS

prompt <текст приглашения>

Например, чтобы в приглашении выводились текущее время, дата, версия DOS и путь к текущему каталогу, следует задать:

prompt $_ВРЕМЯ $t$_Сегодня $d$_Вы используете $v$_Путь $p$q

В результате подсказка будет выглядеть следующим образом:

ВРЕМЯ 10:22:57,76

Сегодня 01.03.2014

Вы используете Microsoft Windows XP [Версия 5.1.2600]

Путь C:\Documents and Settings\Admin_d.SSU-312FA-5=

Переход на другой диск

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

Копирование файлов

copy [устройство] [путь] имя файла-источника [устройство] [путь] имя файла-копии

При успешном выполнении копирования на экране должно появиться сообщение "1 file(s) copied" (1 файл скопирован).

Примеры:

copy proba.doc A:\AAA\proba1.doc – скопировать из текущего каталога файл proba.doc в подкаталог ААА диска А c новым именем proba1.doc,

copy A:\AAA\laba.pas D:\TP\BIN – скопировать с диска А из каталога ААА файл laba.pas на диск D в подкаталог BIN каталога TP c тем же именем.

Для копирования группы файлов используется подстановочный символ *. Он замещает собой один или несколько символов в имени файла.

Примеры:

Copy *.doc A:\AAA\ – скопировать из текущего каталога все файлы с расширением .doc в подкаталог ААА диска А без изменения их имени.

Copy A:\AAA\laba*.* D:\MAIN – скопировать с диска А из каталога ААА все файлы, имя которых начинается laba, с любым расширением, на диск D в каталог MAIN c теми же именами.

Copy a:\my.? скопирует с дискеты все файлы с именем my и с расширением, состоящим из одного символа, а также все файлы с именем my, не имеющими расширения.

С помощью команды copy можно осуществить слияние файлов. Следующая команда объединит содержимое файлов f1.txt и f2.txt в один файл f3.txt: Copy f1.txt+f2.txt f3.txt

Копирование на устройство prn позволяет распечатать текстовый файл. Например, по команде "copy laba.pas prn" на принтер будет выведен текст Pascal-программы.

Создание текстового файла

copy con [устройство] [путь] имя_файла

Данная команда копирует текст, набранный на экране в файл. В конце набора текста следует нажать клавишу F6 или Ctrl+Z и Enter. После этого на экране должно появиться сообщение "1 file(s) copied" (1 файл скопирован).

Пример: copy con proba.txt – создается файл proba.txt в текущем каталоге.

Просмотр текстового файла

type [устройство] [путь] имя_файла

По данной команде содержание текстового файла выводится на экран. Можно только просмотреть содержание файла, изменить нельзя.

Пример: type A:\AAA\proba.txt – текст файла proba.txt, находящегося на диске А в каталоге ААА, будет выведен на экран.

Редактирование текстового файла

Отредактировать содержимое текстового файла можно с помощью встроенного в командную консоль текстового редактора. Для вызова редактора с загруженным в него файлом следует указать его имя:

edit [устройство] [путь] имя_файла

Информацию о работе с текстовым редактором можно получить с помощью вызова его справки.

Переименование файлов

ren [устройство] [путь] имя старое_имя новое_имя

Примеры: ren proba.doc proba1.doc – переименовать файл proba.doc в текущем каталоге в файл с именем proba1.doc,

ren A:\AAA\laba*.pas laba*.txt – переименовать на диске А в каталоге ААА файлы, имя которых начинается laba, с расширением .pas, в файлы того же каталога c теми же именами, но с расширением .txt.

Удаление файлов

del [устройство] [путь] имя_файла

Примеры: del proba.doc– удалить файл proba.doc в текущем каталоге,

del A:\AAA\*.pas – удалить на диске А в каталоге ААА файлы с расширением .pas.

Просмотр содержимого каталога

dir [устройство] [путь] [имя файла] [ключи]

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

dir/p – для постраничного вывода списка,

dir/w – для вывода списка в несколько колонок, но при этом будут выведены только имена файлов без их размера и даты и времени их создания.

Примеры: dir – просмотр текущего каталога,

dir A:\ – просмотр корневого каталога дискеты А,

dir C:\DOS/p – постраничный просмотр подкаталога DOS диска С.

Смена каталога

сd [устройство] [путь] [имя каталога]

Если смена каталога прошла успешно, системное приглашение будет указывать выбранный вами каталог. Для перехода в корневой каталог используют команду cd \, для перехода в каталог на уровень выше – cd .. ..

Пример: cd nc – перейти в подкаталог NC.

Вывод сообщения на экран

Echo [сообщение]

Создание каталога

md [устройство] [путь] имя каталога

Подкаталог может быть создан в любом существующем каталоге.

Примеры: md proba – создать в текущем каталоге подкаталог PROBA

md A:\AAA\PAS – создать на диске А в каталоге ААА подкаталог PAS.

Удаление каталога

rd [устройство] [путь] имя каталога

Может быть удален только каталог, который является пустым, и он не должен быть текущим.

Примеры: rd proba – удалить в текущем каталоге подкаталог PROBA

rd A:\AAA\PAS – удалить на диске А в каталоге ААА подкаталог PAS.

Команда установки списка каталогов для поиска выполняемых файлов

Формат: Path имя[;имя]

Например, команда

Path C:\DOS; C:student

задает маршруты поиска программ в каталогах первого уровня DOS и Student, зарегистрированных в корневом каталоге C:.

Команды фильтрации

Команды фильтрации — это команды, которые читают данные из стандартного устройства ввода, что-то делают с данными, а затем направляют их к стандартному устройству вывода.

sort — сортирует данные. По умолчанию она упорядочивает в порядке возрастания, но с ключом /r она будет сортировать в обратном порядке.

Примеры:

sort < data1 > data2 - считает данные из файла data1, отсортирует их в алфавитном порядке и запишет в файл data2.

Dir | sort >> mydir.txt – оглавление текущего каталога сортируется в порядке возрастания и записывается в конец файла mydir.txt.

More — позволяет вывести такое число строк информации, какое умещается на экране вашего компьютера, а затем ждать нажатия клавиши, говорящего, что Вы готовы воспринимать следующую порцию информации.

Find — используется для обнаружения строк, которые содержат или не содержат некоторые конкретно заданные данные. Например, чтобы выделить ту строку в выходные данные команды date, которая содержит информацию о текущей дате, следует пропустить входные данные команды date через фильтр find и выделить строку, содержащую 20:

date < enter.txt | find “20”

Лабораторная работа № 1.А

Выполнить средствами командной строки следующие задания:

Вариант 1

1. Создать в корневом каталоге Вашего пользовательского раздела диска каталог Glava1, а в нем – подкаталоги Glava2 и Glava3. В подкаталоге Glava3 создать текстовый файл myname.txt, содержащий три строчки по образцу:

Фамилия Имя Отчество

Факультет Курс Номер группы

Часы Минуты День Месяц Год

2. Скопировать файл myname.txt в подкаталог Glava2 под этим же именем и в подкаталог Glava3 под именем fio.txt.

3. Переименовать файл в подкаталоге Glava2 в myname1.txt.

4. Отредактировать файл fio.txt так, чтобы он содержал информацию на изучаемом Вами иностранном языке, а имя и отчество были бы сокращены до инициалов.

5. Объединить содержимое файлов myname1.txt и fio.txt в файл result.txt, который должен располагаться в каталоге Glava1.

6. Удалить с диска каталог Glava2.

7. Изучить справочную информацию о команде dir.

8. Используя средства перенаправления ввода-вывода в команде dir создать в каталоге Glava1 файл myinfo.txt, в котором должна содержаться информация о содержимом каталога Glava1 и его подкаталогов.

9. Переместить на «флешку»/внешний накопитель каталог Glava3, а затем скопировать на нее каталог Glava1 вместе со всем его содержимым.

10. Все созданные Вами файлы с расширением .txt скопировать в корневой каталог «флешки» с теми же именами, но с расширениями .ttt.

Вариант 2

1. Создать в корневом каталоге Вашего пользовательского диска каталог Kniga, в нем – подкаталог Glava, а в каталоге Glava – подкаталог Itog. В каталоге Kniga создать текстовый файл myinfo.txt, содержащий три строчки по образцу:

Фамилия Имя Отчество

Факультет Курс Номер группы

Часы Минуты День Месяц Год

2. Скопировать файл myinfo.txt в подкаталог Itog под этим же именем и в подкаталог Glava под именем primer.txt

3. Переименовать файл в подкаталоге Itog в text.txt

4. Отредактировать файл myinfo.txt так, чтобы он содержал информацию как на русском, так и на изучаемом Вами иностранном языке.

5. Объединить содержимое файлов myinfo.txt и text.txt в файл itog.txt, который должен располагаться в каталоге Glava.

6. Изучить справочную информацию о команде dir.

7. Используя средства перенаправления ввода-вывода создать в каталоге Glava файл mykniga.txt, в котором должна содержаться информация о содержимом каталога Glava, отсортированная в порядке возрастания размера файлов.

8. Переместить на «флешку»/внешний накопитель каталог Itog, а затем скопировать на нее каталог Glava вместе со всем его содержимым.

9. Удалить с диска каталог Kniga.

10. Все созданные Вами файлы с расширением .lex скопировать в корневой каталог «флешки» с теми же именами, но с расширениями .txt.

Командные файлы

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

help copy > copy.help

help move > move.help

md msdos-help

move *.help msdos-help

Командные файлы имеют расширение bat. По нему файлы этого типа опознаются командным процессором. Этот файл можно назвать, например, make-help.bat.

Для того чтобы запустить командный файл, введите его имя в качестве команды. После этого командный файл будет выполнен.

В командном файле каждая команда занимает одну строку. Точнее, существует способ расположить одну команду на нескольких подряд идущих строках, для этого непосредственно перед каждым переводом строки следует поставить символ «крышка» ^. (Необходимо, чтобы каждая «крышка» была последним символом в своей строке; после нее не должно быть пробелов и табуляций). Пример:

if exist Z:\test.txt ^

copy test.txt ^

Z:\test\

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

Не путайте текущий каталог с каталогом, в котором находится запускаемый командный файл. Предположим, текущим каталогом является work, в нем находится каталог tools, а в каталоге tools хранятся командные файлы. Вы запускаете один из них командой tools\collect-images.bat. Так вот, «с точки зрения» этого командного файла, текущим каталогом все равно окажется work, а не tools.

Для приостановке выполнения командного файла используется команда pause. Чтобы продолжить выполнение командного файла, следует нажать на клавиатуре любую клавишу.

Комментирование командного файла и его выдачи.

Команды echo и rem

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

Для оформления комментариев предусмотрена команда rem. Это фиктивная команда, которая не предполагает выполнения каких бы то ни было действий, но позволяет написать в строке после своего имени произвольный текст. Причем командный процессор не воспринимает его как синтаксическую ошибку.

Пример:

rem *****************************************************

rem Формирование файлов справки по командам copy и move

rem *****************************************************

rem Формируем файлы справки

help copy > copy.help

help move > move.help

rem Создаем каталог для хранения файлов справки

md msdos-help

rem Перемещаем файлы справки в подготовленный каталог

move *.help msdos-help

При выполнении приведенного выше командного файла все команды будут выводиться на экран по мере их выполнения, что не всегда удобно. Выдачу команд можно отключить с помощью команды @echo off. Символ «собака» перед командой echo означает, что и сама эта команда должна выполняться в «молчаливом» режиме. С таким же успехом мы могли бы не пользоваться командной echo off, а поместить «собаку» перед каждой командой.

Во многих случаях требуется, чтобы командный файл выводил на экран (или в файл) те или иные сообщения. В одних случаях это могут быть сообщения об ошибках, в других информационные сообщения, объясняющие пользователю командного файла, что происходит в данный момент. Для вывода сообщений применяется та же самая команда echo. В качестве параметра ей передают текст выводимого сообщения. Пример усовершенствованного командного файла:

@echo off

rem *****************************************************

rem Формирование файлов справки по командам copy и move

rem *****************************************************

@echo Формируем файлы справки. Одну секундочку...

rem Формируем файлы справки

help copy > copy.help

help move > move.help

rem Создаем каталог для хранения файлов справки

md msdos-help

rem Перемещаем файлы справки в подготовленный каталог

move *.help msdos-help

echo Готово!

Передача командному файлу параметров

Предположим, мы хотим создать командный файл, который сначала формирует справку с описанием заданной пользователем команды, а потом загружает его для просмотра в блокнот. Фокус в том, чтобы при очередном запуске командного файла каким-то образом сообщить ему, какая именно команда нас интересует на этот раз.

Для решения этой задачи предусмотрен механизм обработки параметров. Работает он довольно просто. Если при запуске командного файла пользователь указал несколько параметров после имени файла, то в тексте командного файла первый из них мы обозначаем записью %1, второй записью %2, третий записью %3 и т.д. Всего может быть использовано не более 9 параметров.

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

@echo off

rem Формируем файл с описанием команды,

rem имя которой передано параметром

help %1 > help.tmp

rem Загружаем файл описания в редактор Блокнот

notepad help.tmp

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

Следующий командный файл создает каталог с именем, указанным в первом параметре, и записывает в него файл с текстом описания команды, указанной во втором параметре:

rem Пример командного файла с двумя параметрами

rem Создаем каталог с именем, заданным первым параметром

md %1

rem Создаем в нем файл с описанием команды,

rem заданной вторым параметром

help %2 > %1\%2.help

Что произойдет, если пользователь при запуске этого командного файла укажет не два, а четыре параметра? Ничего страшного, они ничему не помешают, просто не будут использованы. А что будет, если пользователь укажет только первый параметр? Второй параметр окажется пустым. Эффект получится такой: командный файл будет выполнен, но так, как будто на месте записи %2 ничего нет. Команда help сформирует список всех команд и поместит его в файл с пустым именем и расширением.help. Если же пользователь запустить этот файл, не указав ни одного параметра, то при попытке командного процессора выполнить команду md (предназначена для создания каталога), будет выдано сообщение о синтаксической ошибке, поскольку у команды md обязательно должен быть параметр.

Таким образом, использование параметров создает большие возможности, но может существенно усложнить дело. Для того чтобы командный файл всегда работал корректно, необходимо проверять корректность указания пользователем параметров и каким-то образом реагировать на неполные или неверные входные данные.

studfiles.net