Как сделать копию файла в ms dos

Добавил пользователь Alex
Обновлено: 05.10.2024

Для того, чтобы запустить DOSBox, неоходимо выбрать меню Приложения→Игры→Эмулятор DOSBox. Эта программа достаточно корректно эмулирует операционную систему MS-DOS, однако надо учитывать, что в нём существуют некоторые ограничения. Однако для первых уроков программирования на ассемблере эта программа подходит идеально.

Команды MS-DOS

MS-DOS — дисковая операционная система. Поэтому большая часть команд связана с работой диска (создание каталогов, операции с файлами и т.д.). Диски в MS-DOS нумеруются также, как и в windows (точнее наоборот, в windows также, как в MS-DOS): диск A — дисковод гибких дисков, C, D и т.д. — локальные диски. Для последних версий появилась возможность подключать CD-ROM, но это требовало изрядного энтузиазма, да и не так уж много человек обладало в то время CD-ROM.

Список команд DOS

Материал из Википедии

Список команд DOS — нижеследующий список команд для операционной системы DOS. Начиная с 5-й версии, этот список с кратким описанием каждой команды может быть получен набором команды HELP. Также начиная с 5-й версии справка по конкретной команде может быть получена набором символов /? после имени команды.

Например, набор команды приведёт к получению справки по команде ren:

Переименование одного или нескольких файлов. Для конечного файла нельзя указать другой диск или каталог.

Все команды DOS являются нечувствительными к регистру букв, то есть любая команда может быть набрана как строчными, так и заглавными буквами.

Эквивалентна команде Unix chmod.

Вывод имени либо смена текущего каталога. .. обозначает переход в родительский каталог.

Команда CD диск: отображает имя текущего каталога указанного диска. Команда CD без параметров отображает имена текущих диска и каталога.

Параметр /D используется для одновременной смены текущих диска и каталога.

Изменение команды CHDIR при включении расширенной обработки команд:

Имя текущего каталога в строке вызова преобразуется к тому же регистру символов, что и для существующих имен на диске. Так, команда CD C:\TEMP на самом деле сделает текущим каталог C:\Temp, если он существует на диске.

Команда CHDIR перестает рассматривать пробелы как разделители, что позволяет перейти в подкаталог, имя которого содержит пробелы, не заключая все имя каталога в кавычки. Например: приводит к тому же результату, что и: При отключении расширенной обработки команд используется только второй вариант.

Эквивалентна команде Unix cd (с параметрами), или pwd (без параметров).

Команды для работы с каталогами Чтобы команда сработала, нужно ее напечатать при помощи клавиатуры и нажать ENTER. В основном регистр не учитывается, то есть команды можно вводить как маленькими так и большими буквами. DOS не понимает длинные имена файлов, только в формате 8.3, то есть 8 символов в названии файла и 3 — в расширении. Обратите внимание на пробелы. Как правило, в DOS`e после пробела должен стоять параметр.

Команда ФорматОписаниеПараметры
dirdir диск:\путь\имя_файла /параметры Просмотр каталога /p — поэкранный вывод, /W — вывод информации только об именах файлов (по пять в каждой строке)
mdmd диск:\имя_каталогаСоздание каталога
cdcd диск:\имя_каталогаСмена текущего каталога
rdrd диск:\имя_каталогаУдаление каталога
deltreedeltree имя_файла_или_имя_каталогаУдаление каталога со всем его содержимым
movemove диск: имя_каталога новое_имя_каталогаПереименование каталога
pathpath диск1:\имя_каталога1;диск2:\имя_каталога2Поиск

Набрав две точки (..) можно вернуться в предыдущий каталог, а при вводе \ — в корневой каталог.

dir — просмотр оглавления текущего каталога;

dir *.exe — выводится информация обо всех файлах с расширением EXE из текущего каталога;

cd c:\catalog — установить текущим каталог с именем catalog на диске C;

cd .. — переход на каталог выше;

cd\ — переход в корневой каталог;

md books — в текущем каталоге создать подкаталог books;

md c:\archives — в корневом каталоге на диске С: создается каталог archives;

rd games — удаление каталога games в текущем каталоге.

Ключи /I или /C укорачивают время выполнения CHKDSK за счет пропуска некоторых проверок тома.

Эквивалентна команде fsck в Unix.

Эквивалентна команде clear в Unix.

Копирование одного или нескольких файлов в другое место.

источник Имена одного или нескольких копируемых файлов.

/A Файл является текстовым файлом ASCII .

/B Файл является двоичным файлом.

/D Указывает на возможность создания зашифрованного файла результат Каталог и/или имя для конечных файлов.

/V Проверка правильности копирования файлов.

/N Использование, если возможно, коротких имен при копировании файлов, чьи имена не удовлетворяют стандарту 8.3.

/Y Подавление запроса подтверждения на перезапись существующего конечного файла.

/-Y Обязательный запрос подтверждения на перезапись существующего конечного файла.

/Z Копирование сетевых файлов с возобновлением.

Ключ /Y можно установить через переменную среды COPYCMD.

Ключ /-Y командной строки переопределяет такую установку.

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

Эквивалентна команде cp в Unix.

Расширенными возможностями обладают XCOPY и robocopy

Удаление одного или нескольких файлов.

имена Имена одного или нескольких файлов. Для удаления сразу нескольких файлов используются подстановочные знаки. Если указан каталог, из него будут удалены все файлы. /P Запрос на подтверждение перед удалением каждого файла. /F Принудительное удаление файлов, доступных только для чтения. /S Удаление указанных файлов из всех подкаталогов. /Q Отключение запроса на подтверждение при удалении файлов. /A Отбор файлов для удаления по атрибутам. атрибуты

SСистемные файлы
RДоступные только для чтения
HСкрытые файлы
AФайлы для архивирования

Изменение команд DEL и ERASE при включении расширенной обработки команд:

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

deltree [/y] директория

Вывод списка файлов и подкаталогов из указанного каталога.

/A Вывод файлов с указанными атрибутами. атрибуты D Каталоги R Доступные только для чтения

/B Вывод только имен файлов. /C Применение разделителя групп разрядов для вывода размеров файлов

/D Вывод списка в несколько столбцов с сортировкой по столбцам. /L Использование нижнего регистра для имен файлов. /N Отображение имен файлов в крайнем правом столбце. /O Сортировка списка отображаемых файлов. порядок N По имени (алфавитная) S По размеру (сперва меньшие)

/P Пауза после заполнения каждого экрана. /Q Вывод сведений о владельце файла. /S Вывод списка файлов из указанного каталога и его подкаталогов. /T Выбор поля времени для отображения и сортировки время C Создание

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

/4 Вывод номера года в четырехзначном формате

Форматирование диска. пример:format c:/ -будет отформатирован диск С

FORMAT том: [/FS:система] [/V:метка] [/Q] [/A:размер] [/C] [/X]

FORMAT том: [/V:метка] [/Q] [/F:размер]

FORMAT тома: [/V:метка] [/Q] [/T:дорожки /N:секторы]

FORMAT тома: [/V:метка] [/Q]

том Указывает букву диска (с последующим двоеточием),

/FS:filesystem Указывает тип файловой системы (FAT, FAT32 или NTFS). /V:метка Метка тома. /Q Быстрое форматирование. /C Только для NTFS: Установка режима сжатия по умолчанию для

/X Инициирует отключение тома, в качестве первого действия, если

/A:размер Заменяет размер кластера по умолчанию. В общих случаях

/F:размер Указывает размер форматируемых гибких дисков (1,44) /T:дорожки Число дорожек на каждой стороне диска. /N:секторы Число секторов на каждой дорожке. Для тех, кому интересны более подробные аспекты MS-DOS, могу посоветовать следущую книгу: dosbible.zip Как её прочитать, разбирайтесь самостоятельно:)

Особенности DOSBox

Отладчик DEBUG

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

Данная программа является консольным приложением и предназначена для создания или изменения кода файлов. С помощью неё можно создавать простые приложение под MS-DOS и отслеживать их работу. Данный отладчик находится на самом низком уровне компиляторов assembler. Но обладает неплохими возможностями такими как просмотр, изменение памяти и получение состояния регистров.

Программа вызывается через командную строку:

Работа с файлами

Writing Число_Байт bytes

Отображение и изменение значений регистров Команда Описание Пример -R Выдаёт содержание всех регистров. -R [Нажать Enter] -R [регистр] Просмотр регистра и запись нового значения в регистр. -R AX [Нажать Enter]

Дамп памяти -D Выдаёт содержимое памяти. Сокращённо от слова Dump. -D [Нажать Enter] -D [Начало_Сегмента] L [Конец_Сегмента] Выдаёт содержимое памяти от начального сегмента до конечного сегмента. Чтобы вывести всё память нужно ввести -D 0 L 0 [Нажать Enter] -D 0000 L 0005 [Нажать Enter]

1814:0000 CD 20 FF 9F 00 Дизассемблирование

-U Команда преобразования кода в инструкции ассемблера. Сокращённо от слова Unassemble. -U [Нажать Enter]

1814:0100 ADD [BX+SI],AL 1814:0102 XOR AL,00 Ассемблирование

-A Преобразования инструкции ассемблера в машинный кода. Сокращённо от слова Assemble. -A [Нажать Enter] 1814:0100 MOV AX,0009 1814:0103 [Вводим_Дальше] [Нажать Enter]

-G Запуск исполнения программы. Сокращённо от слова Go. -G [Нажать Enter]

Program terminated normally

-G =[Адрес_Начала_Работы] Начиная с этого адреса начинается компиляция. -G =100 -G [Адрес_Брейкпоинта] [Адрес_Брейкпоинта] … Программа запускается и выполняется пока не дойдёт до брейкпоинта после чего она остановится и выведет значения регистров да продолжения работы необходимо нажать -G. Максимальное число брейкпоинтов 10. -G 176 47d 537 647 [Нажать Enter] -T Команда имеет сходство с командой (-G) Go, но отличается тем что выводит значения регистров поле каждой инструкции. Сокращённо от слова Trace. -T [Нажать Enter] -T =[Адрес_Начала_Работы] [Количество_Иструкций] Дополнительно указывает с какого адреса запускаться программе и количество исполняемых инструкций. -T =100 5[Нажать Enter]

TYPE -служит для вывода на экран содержимого текстового файла. Команда внутренняя.

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

(просмотр файла primer.txt, расположенного в корневом каталоге диска C:);

(просмотр файла exampl.txt из текущего каталога).

COPY -служит для копирования и объединения файлов. Команда внутренняя.

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

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

Общий формат:

COPY[исходные адрес и имя файла] [новые адрес и имя файла]

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

Примеры:

COPY note.doc letter.doc

(внутри текущего подкаталога будет создан новый файл с именем letter.doc, являющийся копией исходного файла note.doc. Если же файл с именем letter.doc там уже существует, то команда COPY попросит у пользователя разрешение на проведение операции замещения);

COPY note.doc D:\REPORT

(файл note.doc будет скопирован из текущего каталога в подкаталог REPORT диска D:. Если подкаталога REPORT не существует, то файл note.doc будет скопирован в файл с именем report и помещен в корневой каталог диска D: );

COPY note.doc D:\REPORT\letter.doc

(внутри подкаталога REPORT диска D: будет создан новый файл с именем letter.doc, являющийся копией исходного файла note.doc. При этом предполагается, что файл note.doc находится в текущем подкаталоге);

COPY D:\TEMP\note.doc D:\REPORT\letter.doc

(файл note.doc, находящийся в подкаталоге D:\TEMP, будет скопирован в файл letter.doc, находящийся в подкаталоге D:\REPORT);

COPY report.doc PRN

(данная команда позволяет распечатать файл report.doc на принтере, т.е. скопировать содержимое файла на устройство с логическим именем PRN - принтер).

Команда COPY также может быть использована и для объединения нескольких файлов в один. Имена файлов, подлежащих объединению, должны быть перечислены в команде COPY через символ “+”.

COPY kvartal1.doc + kvartal2.doc otchet.doc

(в результате выполнения данной команды в текущем каталоге будет создан новый файл с именем otchet.doc, в который будет объединено содержимое файлов kvartal1.doc и kvartal2.doc).

Если имя итогового (“суммарного”) файла не указано, то в его качестве выступит первый из файлов, перечисленных в команде COPY.

Пример:

COPY report + r1999.txt + r2000.txt

(существующий уже файл с именем report объединяется с 2 другими файлами r1999.txt и r2000.txt в новый файл с тем же именем report).

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

Пример:

COPY *.doc report.doc

(все файлы текущего подкаталога, имеющие расширение doc, будут объединены в файл с именем report.doc, который будет помещен в текущий каталог текущего диска).

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

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

COPY CON notes.txt

Команды - способ общения пользователя с компьютером в операционной системе.

Работа на компьютере в операционной системе MS DOS организуется командами. Они вызывают определенное действие в компьютере: организуют передачу информации; вырабатывают необходимый управляющий сигнал; подключают внешнее устройство для организации процесса ввода-вывода информации и т.д.

Команда технически реализована программой в машинных кодах и хранится либо в файле на диске, либо входит в состав командного процессора операционной системы MS DOS. Ввод команды осуществляется в командной строке в соответствии с определенными правилами, заданными в виде формата.

Командная строка - строка экрана, начинающаяся с приглашения операционной системы.

Формат команды - правило формирования команды пользователем с клавиатуры.

  • формат команды состоит из имени команды латинскими буквами (без типа) и отделенных от нее одним пробелом параметров, уточняющих ее действие;
  • в большинстве случаев параметры между собой пробелом не разделяются, а в качестве разделителя часто используется символ / или \;
  • параметрами могут быть: имя дисковода, путь, имя файла, тип файла, латинские буквы, символы, цифры;
  • присутствие параметров в формате часто бывает необязательным.

Команда COPY используется для копирование одного или нескольких файлов в командной строке Windows.

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

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

источник - Имена одного или нескольких копируемых файлов.

/A - Файл является текстовым файлом ASCII.

/B - Файл является двоичным файлом.

/D - Указывает на возможность создания зашифрованного файла

результат - Каталог и/или имя для конечных файлов.

/V - Проверка правильности копирования файлов.

/N - Использование, если возможно, коротких имен при копировании файлов, чьи имена не удовлетворяют стандарту 8.3.

/Y - Подавление запроса подтверждения на перезапись существующего конечного файла.

/-Y - Обязательный запрос подтверждения на перезапись существующего конечного файла.

/Z - Копирование сетевых файлов с возобновлением. Ключ /Y можно установить через переменную среды COPYCMD.

Ключ /-Y командной строки переопределяет такую установку.

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

Команда copy позволяет объединить несколько файлов в один. Чтобы объединить файлы, укажите один конечный и несколько исходных файлов, используя подстановочные знаки или формат "файл1+файл2+файл3+. ".

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

Ключ /N используется для совместимости с программами MS-DOS, не поддерживающих длинные имена файлов.

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

copy /? - выдать справку об использовании команды.

copy file1.txt file2.txt - копировать файл file1.txt в файл file2.txt в текущем каталоге. Если файл file2.txt существует, то пользователю будет выдан запрос на подтверждение перезаписи существующего файла.

copy /Y file1.txt file2.txt - то же самое, что и в предыдущем примере, но запрос на подтверждение перезаписи существующего файла не выводится.

copy *.txt D:\oldfiles\*.txt - копирование всех файлов с расширением txt из текущего каталога в каталог D:\oldfiles

copy file1.txt + file2.txt +file3.txt file123.txt - копировать содержимое файлов file1.txt , file2.txt и file3.txt в файл file123.txt

copy C:\ndldr "D:\My Backup\system\ntldr" - при использовании имен файлов или каталогов, содержащих пробелы, используются двойные кавычки.

COPY /V file.bin A:\saved.bin - выполнить копирование файла на дискету A: с проверкой результата.

    Команда COPY может применяться для копирования файлов с использованием стандартных устройств ввода-вывода:

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