Войти
Android, Windows, Apple, Ликбез. Социальные сети. Драйверы
  • Японские телефоны Новый японский смартфон
  • Lenovo G500S: характеристики, основные особенности
  • Определяем серию продукта видеокарт Nvidia Характеристики карты nvidia 9800 gt
  • А конкуренты у смартфона есть
  • Что такое расширение файла TRZ?
  • Не работает динамик в "айфоне"
  •  Команды манипулирования файлами. Основные cmd команды – просто о полезном

     Команды манипулирования файлами. Основные cmd команды – просто о полезном

    5.6.3. Команды манипулирования файлами

    Команда ERASE (DEL)

    Назначение: удаление файлов.

    Тип: внутренняя.

    Синтаксис:

    ERASE {pattern | dir )

    DEL {pattern \ dir }

    Комментарии. Если в командной строке задан pattern, то удаляются все сопоставимые с образцом файлы. В случае указания dir удаляются все содержащиеся в каталоге файлы, но не подкаталоги и не содержимое последних. Следовательно, dir здесь считается сокращением (си­нонимом) dir \*.*.

    При указании на удаление всех файлов в каталоге (независимо от способа) на экране появится сообщение

    All files in directory will be deleted!

    Are you sure (Y/N)?

    (Все файлы в каталоге будут удалены!

    Вы уверены (Y-да/N-нет)?)

    При утвердительном ответе (Y) выполнение команды продолжается, а при отрицательном (N) - отменяется.

    Замечания:

    DOS не содержит средств восстановления удаленных файлов. Поэтому команду DEL следует использовать аккуратно. В частности, если в качестве ее аргумента предполагается задать дей­ствительно образец, а не файл, то целесообразно предварительно выдать команду DIR с тем же аргументом, чтобы просмотреть список файлов, которые будут удалены. Это позволит предотв­ратить попутное удаление файлов, которые должны быть сохранены;

    Для удаления всех файлов в текущем каталоге диска в приводе d необходимо в качестве аргумента команды задать d:. (просто d: здесь не проходит);

    Файлы с атрибутами R, Н и/или S командой ERASE не удаляются;

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

    Примеры:

    ■ DEL A:*.PAS - удалить все файлы с расширением PAS из текущего каталога диска в приводе А;

    ■ DEL . - удалить все файлы (но не каталоги) в рабочем каталоге.

    DOS 4.0. Для повышения безопасности команды ERASE можно использовать переключатель /Р. При этом перед удалением каждого файла из заданного множества на экране дисплея появляется сообщение

    file, Delete (Y/N)?

    (Удалить file (Y- да/N- нет)?)

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

    Команда RENAME (REN)

    Назначение: переименование файлов.

    Тип: внутренняя.

    Синтаксис:

    RENAME pattern сотрпате

    REN pattern сотрпате

    Комментарии. Множество переименовываемых файлов выделяется по образцу в pattern . Затем каждый файл из этого множества переименовывается таким образом, чтобы его новое составное имя было сопоставимо с образцом с o mpname и одновременно являлось наиболее близким к старому имени. Другими словами, вместо символов-заменителей в с o mpname подставляются соответствующие фрагменты старого имени файла. При этом если символ-заменитель? находится на i-й позиции поля имени (расширения) в с o mpname , то вместо него подставляется i-й символ имени (расширения) переименовываемого файла. Когда поле имени (расширения) переимено­вываемого файла содержит менее i символов, символ-заменитель? ничем не заменяется. Только что сказанное справедливо для всех команд манипулирования файлами.

    Замечания:

    Команда RENAME не изменяет размещения файлов, поэтому любая спецификация dir во втором аргументе игнорируется;

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

    Файлы с атрибутами Н и/или S переименовать не удастся. Остальные атрибуты командой RENAME сохраняются в неизменном виде;

    Командой RENAME невозможно переименовать каталог;

    Символ-заменитель * удобно использовать во втором аргументе команды не только для задания множества составных имен файлов, но и для упрощения указания единственного со­ставного имени (см. примеры).

    Примеры:

    ■ REN \*.ТХТ *.DOC - изменить расширение ТХТ на DOC у всех файлов в корневом каталоге текущего диска;

    ■ REN CURRENT.DAT *.OLD - изменить на OLD расширение файла CURRENT.DAT, содержащегося в рабочем каталоге;

    ■ REN CURRENT.DAT CURRENT.OLD - тоже;

    ■ REN CURRENT.DAT 1986.* - изменить на 1986 имя файла CURRENT.DAT, оставив то же расширение;

    ■ REN 02.ТХТ 1?.* - переименовать файл 02.ТХТ в файл 12.ТХТ;

    ■ REN 2.TXT 1?.* - переименовать файл 2.ТХТ в файл 1.ТХТ.

    Команда ATTRIB

    Назначение: изменение и отображение атрибутов файлов.

    Тип: внешняя.

    Синтаксис:

    ATTRIB [ + R |-R ] [ + А|-А] pattern

    Комментарии. Если в командной строке задан аргумент +х , то для всех файлов, сопоставленных с образцом в pattern , устанавливается атрибут х . В случае указания аргумента -х для выделенных по образцу в pattern файлов атрибут х сбрасывается. Если файл имеет атрибут х (не имеет атрибута х), то задание +х (-х ) для этого файла никакого влияния на него не оказывает.

    Указание в команде только pattern обеспечивает выдачу на экран текущих атрибутов выде­ленных файлов без их изменения.

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

    Замечания:

    Атрибут А позволяет управлять командами BACKUP и XCOPY, обеспечивающими резервное копирование файлов;

    Установка атрибута R затрудняет удаление и модификацию файла, что удобно делать для файлов, совместно используемых (разделенных) в сети, а также для файлов с ценной информацией;

    Дополнительные сведения об атрибутах файлов содержатся в п. 5.2.2;

    Команда ATTRIB не позволяет устанавливать и сбрасывать атрибуты Н и S, а также просматривать атрибуты таких файлов;_

    В качестве аргумента команды ATTRIB нельзя указывать спецификацию каталога (вместо этого используйте dir \*.*);

    Последовательностью команд ATTRIB (устанавливая и сбрасывая определенный атрибут у разных подмножеств файлов с использованием образцов) можно быстро установить требуемые атрибуты тех или иных файлов;

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

    Примеры:

    ■ ATTRIB +R C:\USER\XYZ.DAT - установить для указанного файла атрибут R;

    ■ ATTRIB -R +А *.ТХТ - установить атрибут А и сбросить атрибут R у всех файлов с расширением ТХТ в рабочем каталоге;

    ■ ATTRIB +А С:\*.* /S - установить атрибут А у всех файлов на диске в приводе С;

    ■ ATTRIB *.* - отобразить атрибуты всех файлов, содержащихся в рабочем каталоге;

    ■ ATTRIB +А С:\*.ТХТ /S - установить атрибут А у всех файлов с расширением ТХТ на диске в приводе С;

    ■ ATTRIB A:Pl.PAS - отобразить атрибуты файла PI.PAS, содержащегося в текущем каталоге диска в накопителе А;

    ■ ATTRIB +R C:\DOC\*.DOC /S - установить атрибут R у всех файлов с расширением DOC, содержащихся в поддереве файловой структуры диска в приводе С, корнем которого является каталог \DOC;

    ■ ATTRIB +А A:\V

    ATTRIB -А A:\*.BAK - установить атрибут А у всех файлов в корневом каталоге диска в приводе А, за исключением тех файлов, которые снабжены расширением ВАК, а у последних атрибут А сбросить;

    ■ ATTRIB C:\*.UNI /S - отобразить атрибуты всех существующих на диске в приводе С файлов с расширением UNI (одновременно с этим выводятся и их спецификации, что позволяет найти все требуемые файлы).

    Команда COMP

    Назначение: сравнение содержимого файлов.

    Тип: внешняя.

    Синтаксис:

    COMP \dir 2 \pattern 2 ]

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

    После ввода команды по первому аргументу выделяется исходное множество файлов, а по второму - целевое. Затем содержимое каждого файла из исходного множества сравнивается с содержимым того файла из целевого множества, составное имя которого получается подстановкой в pattern2 вместо имеющихся в нем символов-заменителей соответствующих фрагментов состав­ного имени файла из исходного множества. Файлы из исходного множества выбираются в том порядке, в каком они зарегистрированы в каталоге. Команда COMP сообщает о том, содержимое каких файлов она в данный момент сравнивает. Результаты сравнения содержимого пар файлов также выводятся на экран дисплея. Сравнение файлов завершается по исчерпании исходного множества. Поэтому число элементов в целевом множестве может превышать количество эле­ментов в исходном множестве, но не наоборот.

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

    Enter primary filename

    (Введите первичное имя файла)

    Второй аргумент должен быть задан в ответ на запрос

    Enter 2nd filename or drive id

    (Введите второе имя файла или идентификатор привода)

    Задание в качестве аргумента спецификации pattern приводит к тому, что для сравнения выбираются те файлы, составные имена которых сопоставимы с шаблоном. Аргумент dir считается сокращением для dir \*.*.

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

    Files are different sizes

    (Файлы различаются по размеру)

    и сравнение не производится.

    В ходе работы COMP содержимое файлов сравнивается побайтно, а при несовпадении байтов в файлах на экран выводится сообщение нижеприведенного вида:

    Compare error at OFFSET xxxxxxxx

    (Ошибка сравнения при смещении xxxxxxxx)

    Здесь х, у и z - шестнадцатеричные цифры, FTLE1 - ссылка на исходный, a FILE2 - на целевой файл. Смещение указывает номер байтов от начала файлов, на которых обнаружено несовпадение (нумерация начинается с нуля). Для каждого файла сообщается содержимое несовпавшего байта (числа хх и уу).

    Сравнение двух файлов на этом не завершается, но после десяти несовпадений оно все же прекращается с выдачей сообщения

    10 Mismatches - ending compare

    (10 несовпадений - завершение сравнения)

    При полном совпадении содержимого двух файлов на экран выводится сообщение

    Files compare OK

    (Файлы сравнились успешно)

    Если маркеры EOF в сравниваемых файлах не найдены, то командой в процессе работы будет выдано сообщение

    EOF mark not found

    (Маркер EOF ненайден),

    но это не ошибка, а возможная информация к размышлению, так как двоичные файлы и не должны иметь этих маркеров.

    После успешного или неуспешного завершения сравнения очередной пары файлов из двух множеств команда COMP переходит к сравнению содержимого следующей пары.

    По исчерпании исходного множества файлов появляется сообщение

    Compare more files (Y/N)?

    (Еще сравнивать файлы (Y-да/N-нет)?)

    При ответе Y команда COMP предлагает Вам задать с клавиатуры два новых Множества для сравнения, и ее выполнение после ответов будет продолжено. В противном случае выполнение команды завершается.

    Замечания:

    Команда COMP сравнивает только содержимое файлов и не учитывает их физическое размещение на дисках;

    Сравниваемые множества файлов могут содержаться в различных каталогах и на различных дисках;

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

    Содержимое каталогов командой COMP не сравнивается;

    Использование символа-заменителя * во втором аргументе позволяет не только задать множество файлов, но и упростить задание единственного файла;

    Сравнение файла с самим собой обеспечивает проверку его считываем ости;

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

    Если требуется сравнить файлы на различных дискетах, а ПЭВМ не оборудована НЖМД, то следует запустить COMP с дискеты без указания, по крайней мере, второго аргумента Затек! после выдачи сообщения на ввод аргумента нужно заменить в приводах дискеты на требуемые и ответить на запрос.

    Примеры:

    ■ COMP C:\DATA\P1.DAT A:\DATA\P2.DAT - сравнить содержимое указанных файлов;

    ■ COMP С:*ASM В:*.ВАК - сравнить файлы *ASM, содержащиеся в текущем каталоге диска в приводе С, с одноименными, но с расширением ВАК, файлами из текущего каталога диска в приводе В;

    ■ COMP С*ASM B:\PROGRAMS - сравнить файлы *ASM, содержащиеся в текущем каталоге диска в приводе С, с одноименными файлами из каталога \PROGRAMS диска в приводе В;

    ■ COMP С:*ASM *.ВАК - сравнить файлы *ASM из текущего каталога диска в приводе С с одноименными, но с расширением ВАК, файлами из рабочего каталога;

    ■ COMP - сравнить файлы, которые будут заданы в ответ на запросы команды;

    ■ COMP С:* ASM - сравнить файлы *ASM из текущего каталога диска в приводе С с файлами, которые будут заданы в ответ на запрос команды;

    ■ COMP С:\А:\ - сравнить все файлы из корневого каталога диска в приводе С с одноименными файлами, содержащимися в корневом каталоге диска в приводе А;

    ■ COMP C:\DATA А: - сравнить все файлы из каталога \DATA диска в приводе С с одноименными файлами, содержащимися в текущем каталоге диска в приводе А;

    ■ COMP A:CURRENT.DAT В:*.ВАК - сравнить файл CURRENT.DAT из текущего каталога диска в приводе А с фалом CURRENT.BAK, содержащимся в текущем каталоге диска в приводе В;

    ■ COMP A:CURRENT.DAT В: - сравнить тот же файл с одноименным файлом, содержащимся в текущем каталоге диска в приводе В;

    ■ COMP . А: - сравнить все файлы из рабочего каталога с одноименными файлами, содержащимися в текущем каталоге диска в приводе А;

    ■ COMP *.* А: - то же.

    Команда FC

    Назначение : сравнение содержимого файлов и отображение различий между ними.

    Тип: внешняя.

    Синтаксис.

    Для двоичного сравнения:

    FC filel file!

    Для текстового сравнения.

    FC filel file2

    Комментарии. FC является усовершенствованной командой COMP. Последняя обеспечивает только побайтное, но не построчное сравнение содержимого файлов, причем сопоставление прекращается после десяти несовпадений. Команда же FC поддерживает режимы как двоичного (побайтного), так и текстового (построчного) сравнения.

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

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

    В командной строке filel и file2 задают два файла, содержимое которых подлежит сравнению.

    Результаты выполнения команды FC выводятся в форме, несколько отличающейся от COMP.

    Переключатели в командной строке имеют следующий смысл:

    /А - сократить (Abbreviate) объем выдачи при текстовом сравнении: вместо вывода не­совпадающих фрагментов целиком выдавать только их первые и последние строки;

    /В - установить режим двоичного (Binary) сравнения файлов (принимается по умолчанию для файлов с расширениями EXE, COM, SYS, OBJ, LIB и BIN);

    /С - игнорировать при текстовом сравнении различие в кодировке одноименных строчных и прописных букв (Case), рассматривая все буквы как прописные;

    /L - установить режим текстового (Line - построчного) сравнения содержимого файлов (принимается по умолчанию для файлов, расширением имен которых не является EXE, COM, SYS, OBJ, LIB или BIN);

    /LBm - установить размер внутреннего буфера (Line Buffer), достаточный для хранения за­данного посредством т числа строк (по умолчанию т = 100);

    /N - отображать при текстовом сравнении не только сами различающиеся строки, но и их номера (Number);

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

    /W - при текстовом сравнении сжимать «чистые» пробелы (White spaces - последователь­ности символов TAB и SP) в единственный пробел внутри каждой строки (между словами) и игнорировать их в начале, а также в конце строки. Указание этого переключателя (как и предыдущего) позволяет не принимать во внимание несущест­венные различия в сравниваемых текстовых файлах;

    /n - задать посредством п число подряд совпавших строк при текстовом сравнении, чтобы считалось, что содержимое файлов снова согласовано (различающиеся фрагменты вы­делены и пройдены). Если совпало подряд после обнаружения расхождений меньшее количество строк, то они помещаются в различающиеся фрагменты текста и согласование содержимого файлов продолжается. По умолчанию в качестве п принимается число 2.

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

    хххххххх: уу zz ,

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

    уу - содержимое несовпавшего байта первого файла;

    zz - содержимое несовпавшего байта второго файла.

    В режиме текстового сравнения несовпадающие фрагменты файлов выводятся на экран в следующем виде:

    Последняя совпадающая строка

    Отличающийся фрагмент первого файла

    Последняя совпадающая строка

    Отличающийся фрагмент второго файла

    Первая вновь совпадающая строка

    Здесь fuel и file2 - спецификации сравниваемых файлов. Отметим, что первая вновь совпадающая строка соответствует началу согласованных участков файлов.

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

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

    Resync failed. Files are too different

    (Повторная синхронизация не удалась. Файлы слишком различны)

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

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

    fc: filel longer than file2

    (filel длиннее, чем flle2)

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

    fc: no differences encountered

    (различийнеобнаружено)

    Замечания:

    Команда FC в PC DOS 3.3 отсутствует;

    Указание в командной строке шаблонов и каталогов недопустимо;

    При задании двух файлов с различными расширениями режим сравнения в общем случае следует специфицировать явно;

    Допускается осуществлять сравнение содержимого файла с тем, что будет введено пользова­телем с клавиатуры, что достигается указанием в качестве одного из аргументов устройства CON;

    Переключатель /С не обеспечивает игнорирование различий одноименных прописных и строчных букв кириллицы;

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

    Справедливы многие замечания, сделанные для команды COMP;

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

    Примеры:

    ■ FC /А MONTHLY.RPT SALES.RPT - сравнить содержимое заданных файлов в текстовом режиме с выдачей сокращенного отчета;

    ■ FC /LB500 /4 /L /W MYFILE.TXT YOURFILE.TXT - сравнить содержимое заданных файлов в текстовом режиме, причем размер буфера установить размером в 500 строк и считать файлы вновь согласованными при идентичности четырех строк подряд, а различия в количестве промежутков между словами во внимание не принимать.

    Команда COPY

    Назначение: копирование и сцепление (конкатенация) файлов.

    Тип: внутренняя.

    Синтаксис.

    Для копирования файлов:

    COPY {dirl\patternl}

    Дляконкатенации файлов:

    COPY{patternl\dirl}

    {pattern2 | dir2 ]...

    Комментарии . Очевидно, формат команды для копирования файлов является частным случаем формата для конкатенации файлов. Тем не менее мы умышленно (с целью упрощения изложения) не воспользовались имеющейся возможностью объединения двух форматов в один. Сначала рассмотрим порядок копирования, а затем - организацию конкатенации файлов. В заключение обсудим действие переключателей.

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

    Как и в некоторых других командах, задание в качестве аргумента спецификации dir экви­валентно указанию dir \*.*.

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

    Копирование файла «на себя» не допускается. При задании такого режима выполнения команды COPY на экран выводится сообщение

    File cannot be copied onto itself

    0 File (s ) copied

    (Файл не может быть скопирован на себя.

    Скопировано 0 файлов)

    и копирование не производится.

    При дублировании файла дата и время его создания (последней модификации) не изменяются.

    Режим конкатенации файлов используется для объединения их содержимого в единый файл (или в несколько файлов). Это полезно главным образом для текстовых файлов, когда из их последовательности формируется единый документ. Данный режим можно использовать и для добавления фрагментов текста в конец существующего файла.

    В режиме конкатенации множества сцепляемых файлов задаются в командной строке спе­цификациями образцов файлов (pattern ) и/или спецификациями каталогов (dir ), между которыми ставится символ +, возможно, ограниченный слева и справа последовательностями пробелов. Последний аргумент, которому не предшествует + , определяет местоположение и составные имена файлов, которые будут содержать результаты конкатенации. Таким образом, в режиме конкатенации может быть несколько исходных аргументов (но не менее одного) и только один - целевой . В случае задания только одного исходного аргумента один из возможных режимов (копирования или конкатенации) выбирается в соответствии с видом аргументов и это неодно­значности не вызывает. Как и в режиме копирования, в режиме конкатенации dir является сокращением для dir \*.*. Файлы, выделенные по исходным аргументам, будем называть исходными, а сформированные по целевому аргументу - результирующими.

    Существует несколько вариантов реализации конкатенации в зависимости от того, какие аргументы и каким образом определены. В связи с этим рассмотрим три случая:

    1) все исходные аргументы и целевой аргумент заданы шаблонами (или шаблоны подразумеваются);

    2) по крайней мере, одним из исходных аргументов задан единственный файл, а целевой аргумент является шаблоном (или шаблон подразумевается);

    3) в качестве целевого аргумента указан единственный файл.

    В первом случае выполнение команды COPY сводится в определенном смысле к реализации последовательности «подкоманд» COPY. Аргументы каждой такой «подкоманды» аналогичны аргументам исходной команды, но конкретизированы вплоть до указания на единственные файлы. Конкретизация аргументов в командной строке команды COPY производится по элементам множества составных имен файлов, определяемого первым исходным аргументом. По составному имени каждого файла из этого множества осуществляется уточнение других аргументов путем подстановки вместо символов-заменителей в них соответствующих фрагментов этого составного имени. Описанный процесс, а следовательно, порядок «подкоманд» COPY, определяется порядком вхождения в каталог файлов, выделенных по первому исходному аргументу. Но это в данном случае на конечный результат выполнения команды COPY влияния не оказывает (не имеет значения, в какой последовательности формируются результирующие файлы).

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

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

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

    COPY fllel+file2 filel

    эквивалентно

    COPY filel+file2

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

    Content of destination lost before copy

    (Содержимое адресата (результирующего файла) потеряно до* копирования)

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

    Если один и тот же файл выступает в роли первого и целевого (пусть даже неявно заданного) аргумента, а также сопоставим с каким-либо еще аргументом, то приведенное выше сообщение о потере содержимого адресата выдается, но реально содержимое адресата не теряется. В этом случае просто игнорируется использование данного файла в роли непервого аргумента. Объяснение указанного факта состоит в том, что файл здесь открывается не для записи, а для добавления в конец. Описанная ситуация потенциально опасна, и ее лучше избегать.

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

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

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

    После завершения копирования или конкатенации файлов на экране дисплея отображается сообщение

    n File(s) copied

    (Скопировано п файлов)

    где п - число созданных файлов.

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

    /А - осуществлять копирование (конкатенацию) в текстовом режиме;

    /В - осуществлять копирование (конкатенацию) в двоичном режиме.

    Переключатель /V независимо от того места, где он указан в команде, действует на всю командную строку (поэтому достаточно задать его один раз). Переключатель /А (/В) действует на предшествующий и все последующие аргументы до начала области действия переключателя /В (/А). Эти два переключателя несовместимы (конечно, для одного и того же, а не для разных аргументов команды).

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

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

    При применении к файлам-оригиналам (исходным файлам) переключатели имеют следующий смысл:

    /А - данные из файла копируются (считываются) вплоть до первого маркера EOF, но не включая его. Остаток файла не копируется (не считывается). При отсутствии маркера EOF или если файл имеет большую длину, чем указано в каталоге, команда COPY руководствуется сведениями о длине из соответствующего файлу элемента каталога;

    /В - файл копируется (считывается) полностью в соответствии со значением в поле длины файла из элемента каталога.

    Для файлов-дубликатов (результирующих файлов) эти переключатели интерпретируются так:

    /А - после записи на диск дубликата (результирующего файла) в качестве последнего добавить маркер EOF;

    /В - после записи файла на диск маркер EOF не добавлять.

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

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

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

    Замечания:

    Команда COPY является одной из наиболее часто используемых и наименее познанных команд DOS;

    Как это ни парадоксально, но тем не менее сокращение d: для d:. в качестве исходного (но не целевого) аргумента в команде COPY не допускается;

    Наряду с копированием файлов она поддерживает и их одновременное переименование;

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

    При копировании (конкатенации) файлов оригиналы (исходные файлы) сохраняются без каких-либо изменений, если не используется вариант конкатенации файлов с добавлением данных в конец существующего файла;

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

    Файлы с атрибутами Н и/ или S командой COPY не обрабатываются; атрибут R в файлы-дубликаты (результирующие файлы) из файлов-оригиналов (исходных файлов) не переносится; для файлов, созданных по целевому аргументу, всегда устанавливается атрибут А;

    Первый аргумент в команде COPY должен быть всегда задан (по крайней мере, точкой);

    Символ-заменитель * может использоваться не только для задания множества файлов, но и для упрощения задания единственного файла в качестве целевого аргумента в режиме копирования;

    Нецелесообразно пользоваться переключателем /V часто, так как информация записывается на диск, как правило, без ошибок. Однако его следует указывать при обработке файлов с важной информацией, а также при записи на «сбойные» дискеты. Задание переключателя /V увеличивает время выполнения команды COPY. Альтернативным средством верификации записи информации на диски является команда VERIFY, действующая в отличие от переключателя /V на /все последующие операции записи на диск до отмены режима контроля этой же командой (пере­ключатель же /V действует только в рамках выполнения данной команды);

    Переключатель /А (/В) может указываться и перед первым аргументом команды; тогда его действие распространяется на все последующие исходные аргументы до качала области действия переключателя /В (/А) и на целевой аргумент, причем его воздействие на последний ничем не отменяется;

    Копирование текстовых файлов в текстовом режиме обеспечит приведение зарегистриро­ванных длин файлов в соответствие с реальными;

    Копирование файлов на диск, содержимое которого не фрагментировано (в частности, на полностью пустой диск) позволяет реализовать их дефрагментацию;

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

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

    Переключатель /V при копировании на посимвольное устройство отвергается;

    В режиме копирования символы ТАВ в последовательности пробелов не разворачиваются. По этой причине команду COPY не всегда целесообразно использовать для вывода текстов на посимвольные устройства. Лучше для этих целей применять команды TYPE и PRINT;

    Команда COPY не обеспечивает копирования поддерева файловой структуры. Для реализации этого служит команда XCOPY.

    Примеры :

    ■ COPY A: \MYFILE.DAT В:М YFILE.BAK - скопировать файл MYFILE.DAT из корневого каталога диска в приводе А в текущий каталог диска в приводе В и присвоить дубликату имя MYFILE.BAK;

    ■ COPY A:\MYFILE.DAT В:*.ВАК - то же;

    ■ COPY A:\MYFILEJDAT - скопировать указанный файл в рабочий каталог (без переименования);

    ■ COPY MYFILE.DAT В: - скопировать указанный файл из рабочего каталога в текущий каталог диска в накопителе В;

    ■ COPY MYFILE.DAT B:\DATA - скопировать указанный файл из рабочего каталога в каталог \DATA диска в приводе В;

    ■ COPY A:*.BAS С: - скопировать все файлы с расширением BAS из текущего каталога диска в приводе А в текущий каталог диска в приводе С;

    ■ COPY A:*.BAS С:*.ВАК.- то же, но у дубликатов меняется расширение с BAS на ВАК;

    ■ COPY А: . В: - скопировать все файлы из текущего каталога диска в приводе А в текущий каталог диска в приводе В;

    ■ COPY А:. В:*.ВАК - то же, но расширение имен файлов заменить на ВАК;

    ■ COPY . B:UTILS - скопировать все файлы из рабочего каталога в каталог UTILS, содержащийся в текущем каталоге диска в приводе В;

    ■ COPY MAIN .PAS + P 1.PAS + P 2.PAS MYPROG .PAS - сцепить в указанном порядке содер­жимое файлов MAIN .PAS , P 1.PAS и P 2.PAS с записью результата в файл MYPROG .PAS (все файлы обрабатываются в рабочем каталоге);

    ■ COPY *.ТХТ+ *.REF *.DOC - сцепить каждый файл с расширением ТХТ с одноименным файлом, но имеющим расширение REF, и записать результат в файл с тем же именем и расширением DOC (все файлы обрабатываются в рабочем каталоге);

    ■ COPY *.ТХТ +R.REF *.DOC - найти в рабочем каталоге первый ТХТ-файл, присоединить к нему содержимое файла R.REF и поместить результат в файл с тем же именем, что и ТХТ-файл, но с расширением DOC;

    ■ COPY R.TXT + *.REF *.DOC - присоединить к файлу R.TXT содержимое всех REF-файлов из рабочего каталога и поместить результат в файл R.DOC;

    ■ COPY *.ТХТ COMBIN.DOC - объединить все файлы с расширением ТХТ в единый файл COMBIN.DOC; очередность обработки исходных файлов зависит от порядка их вхождения в рабочий каталог,

    ■ COPY *.TXT+R.REF COMBIN.DOC - то же, но в конец файла COMBIN.DOC дополнительно записывается содержимое файла R.REF;

    ■ COPY *.TXT+*.REF COMBIN.DOC - сцепить последовательно все файлы с расширением ТХТ, присоединить к ним содержимое всех файлов с расширением REF и поместить результат в файл COMBIN.DOC; порядок выбора ТХТ- И REF-файлов зависит От по­следовательности их вхождения в рабочий каталог,

    ■ COPY А:. + В:. С: - сцепить попарно все файлы из текущего каталога диска в приводе А с одноименными файлами из текущего каталога диска в приводе В и поместить результаты в текущий каталог диска в приводе С под теми же именами;

    ■ COPY *.ТХТ ALL.TXT - сцепить содержимое всех файлов с расширением ТХТ и записать результат в файл ALL.TXT; если файл ALL.TXT существовал, то его первоначальное содержимое будет потеряно и не скопируется в новую версию файла;

    ■ COPY ALL.TXT+ *.ТХТ - то же, но результат конкатенации будет содержать в префиксе первоначальное содержимое файла ALL.TXT, хотя и выдается сообщение о потере содержимого результирующего файла;

    ■ COPY ALL.TXT+ *.ТХТ ALL.TXT - то же;

    ■ COPY MEMO.DOC /А LETTER.DOC - скопировать содержимое файла MEMO.DOC в файл LETTER.DOC в текстовом режиме (/А действует на оба аргумента);

    ■ COPY F1.TXT /А F2.TXT /В - скопировать содержимое файла F1.TXT в файл F2.TXT с отсечением маркера EOF, если он в первом файле имеется;

    ■ COPY F1.TXT /А F2.TXT - скопировать содержимое файла F1.TXT в файл F2.TXT с тем, чтобы зарегистрированную длину файла привести в соответствие с реальной;

    ■ COPY MYFILE.TXT CON - отобразить содержимое файла MYFILE.TXT на экране дисплея;

    ■ COPY MYFILE.TXT PRN - распечатать содержимое файла MYFILE.TXT на принтере;

    ■ COPY CON AUTOEXEC.BAT - создать файл AUTOEXEC.BAT и записать в него текст, заданный с клавиатуры (ввод текста завершается нажатием клавиши F6, а вслед за ней - Enter);

    ■ COPY AUTOEXEC.BAT + CON - дополнить файл AUTOEXEC.BAT информацией, введенной с клавиатуры;

    ■ COPY MYFILE.TXT/В + NUL/A MYFILE.TXT/В - изменить дату и время создания файла MYPROG.TXT на текущие;

    ■ COPY /В MYFILE.TXT+NUL/A MYFILE.TXT - то же;

    ■ COPY MYFILE.TXT /В + „ - то же;

    ■ COPY CON PRN - скопировать ввод с клавиатуры непосредственно на принтер (печать будет осуществлена вслед за вводом с клавиатуры маркера EOF, а в остальном будет полностью имитироваться пишущая машинка).

    Команда XCOPY

    Назначение: копирование файлов и подкаталогов.

    Тип: внешняя.

    Синтаксис:

    XCOPY {dirl | patternl }

    Комментарии. Данная команда (ее имя - аббревиатура от eX tended COPY) является расши­ренным вариантом команды COPY в режиме копирования и дополнительно обеспечивает

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

    2) копирование поддеревьев файловой структуры.

    Кроме того, XCOPY использует для своей работы всю свободную оперативную память и поэтому работает гораздо быстрее.

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

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

    Если в качестве аргумента указан каталог dir , а не pattern , то предполагается спецификация dir \*.* (все файлы в каталоге).

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

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

    В связи с тем, что XCOPY (как мы увидим ниже) в отличие от команды COPY Может создавать каталоги, она не всегда в состоянии однозначно интерпретировать свои аргументы. В таких случаях пользователю выдается запрос. Например, при задании в качестве целевого аргумента спецификации без символов-заменителей не всегда можно определить, что же в конечном счете требуется пользователю: поместить дубликат в указанный файл (естественно, создав его) или рассматривать эту спецификацию как каталог, в который требуется скопировать файл. Команда XCOPY принимает в данной ситуации однозначное решение, если целевой аргумент указывает на существующий каталог (файл копируется в него с сохранением имени). В противном же случае выдается сообщение

    Does string specify a file name

    or directory name on the target

    (F=fiie D = directory)?

    (Задает ли string в (целевом аргументе) имя файла

    или имя каталога

    (F= файл D = каталог)?)

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

    Факультативные переключатели в команде XCOPY имеют следующий смысл:

    /А - копировать из выделенных по шаблону только те файлы, которые имеют атрибут

    А. При этом атрибуты файлов-оригиналов не модифицируются. Переключатель /А несовместим с /М;

    /М - то же, но после копирования атрибут А у оригиналов сбрасывается. Этот переклю-

    чатель несовместим с /А;

    /D:date - копировать из выделенных по шаблону только созданные не раньше указанной даты (date) файлы. Для получения дополнительной информации см. описание команды DATE в этом же пункте;

    /S -копировать не только заданные исходным аргументом файлы, но и файлы во всех

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

    /Е - копировать и пустые подкаталоги. Этот переключатель используется только совместно с /S;

    /Р - запрашивать у пользователя подтверждение на копирование каждого выделенного

    файла (Y/N);

    /V - контролировать правильность записи информации на диск путем проверки считываемости;

    /W - сделать в начале выполнения команды паузу с выдачей сообщения «Press any key when ready to start copying files* («Нажмите любую клавишу при готовности начать копирование файлов»). Пользователь может поступить в соответствии с предписанием для продолжения выполнения команды или нажать комбинацию клавиш Ctrl-Break для ее завершения.

    Переключатель /D совместим с переключателем /А (/М), и оба они действуют в качестве дополнительного ограничителя множества файлов-оригиналов.

    Сообщения, выдаваемые на экран в процессе выполнения XCOPY, аналогичны сообщениям, отображаемым командой COPY.

    Команда XCOPY генерирует следующие коды возврата:

    0 - копирование прошло без ошибок;

    1 - для копирования не найдено ни одного файла;

    2 - выполнение команды принудительно завершено пользователем путем нажатия комбинации клавиш Ctrl-Break;

    4 - ошибка инициализации (недостаточно внешней памяти для выполнения команды, неправильный синтаксис команды или заданы аргументы, не соответствующие реальной фай­ловой структуре и конфигурации оборудования);

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

    Замечания. Было бы неправильным считать, что при наличии утилиты XCOPY использование команды COPY нецелесообразно. Дело в том, что последняя все же имеет следующие преимущества:

    Является внутренней, а поэтому запускается быстрее и пользоваться ею более удобно;

    Команда COPY допускает использование имен последовательных устройств вместо специ­фикаций файлов, a XCOPY - нет;

    Команда COPY обеспечивает конкатенацию файлов, a XCOPY - нет,

    Командой COPY в отличие от XCOPY обеспечивается возможность явного задания текстового или двоичного режима копирования файлов (XCOPY поддерживает только двоичное копирование).

    Преимущества команды XCOPY были перечислены выше.

    В отношении XCOPY можно сделать следующие замечания, аналогичные, но не полностью совпадающие с указанными для команды COPY:

    Файлы-оригиналы и каталоги-оригиналы сохраняются без каких-либо изменений;

    При копировании в существующие файлы, не имеющие атрибута R, они заменяются заданными в команде оригиналами (т.е. уничтожаются и создаются заново); если же атрибут R установлен, то выдается сообщение «Access denied* («Доступ отвергнут») и копирование не производится. Копирование же поддерева файловой структуры сопровождается не заменой, а пополнением содержимого каталогов, возможно, уже существующего поддерева, на которое указывает целевой аргумент. В данном случае никакой подкаталог не заменяет даже одинаково размещенный и так же поименованный каталог. Вместо этого копируются только файлы и добавляются соответствующие им элементы подкаталогов. Отсутствующие каталоги, конечно, создаются. Такая техника позволяет сохранить уже созданное поддерево каталогов и содержащиеся в нем файлы, если при дублировании не возникает коллизий составных имен файлов;

    Файлы с атрибутами Н и/или S командой XCOPY не обрабатываются, а при копировании файлов с атрибутом R последний не переносится. Для файлов-дубликатов всегда устанавливается атрибут А;

    Дата и время создания файлов при копировании не изменяются;

    Рабочий каталог в исходном аргументе удобно задавать точкой;

    Символ-заменитель * может использоваться не только для задания множества файлов, но и для упрощения задания единственного файла в качестве целевого аргумента;

    Задание переключателя /V замедляет выполнение команды, но придает уверенность при дублировании ценной информации. Альтернативой переключателя /V является команда VERIFY, которая включает и выключает контроль записи на диск для всех последующих операций;

    Команда XCOPY в случае подходящего (нефрагментированного) размещения информации на целевом диске обеспечивает дефрагментацию файлов;

    Дублирование файлов с защищенных от копирования дискет к успеху не приводит (как, впрочем, и выполнение команды DISKCOPY, а также COPY);

    Символы TAB в последовательности пробелов не разворачиваются;

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

    Кроме того:

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

    Использование переключателя /W облегчит выполнение копирования информации с дискеты на дискету при наличии в ПЭВМ только двух НГМД и отсутствии НЖМД. Для этого надо запустить утилиту XCOPY с дискеты, а перед ответом на сообщение по /W заменить дискеты на требуемые для дублирования;

    Циклическое копирование выполнять запрещается (каталог, в который осуществляется копирование, не должен входить в копируемое поддерево файловой структуры);

    Команду XCЦPY следует использовать вместо DISKCOPY при копировании всего содер­жимого одной дискеты на другую, имеющую иной формат,

    Для устранения неоднозначности целесообразно в качестве аргументов команды XCOPY по возможности не использовать dir, а задавать только pattern , в частности, dir\*.*\;

    Сокращение d: для d\. допускается в качестве любого аргумента в командной строке;

    Команда XCOPY с переключателями /S и /М является функциональным аналогом команды резервирования BACKUP и имеет следующие особенности: работает быстрее, чем BACKUP; файлы могут быть восстановлены этой, же командой или командой COPY, но не RESTORE; не позволяет резервировать файлы, размер которых превышает емкость дискеты; не разрушает файловую структуру целевого диска; при необходимости зарезервировать все файлы требует предварительного выполнения команды ATTRIB с переключателем /S, чтобы затем использовать в командной строке переключатель /М (без него XCOPY не позволит продублировать файлы, суммарный размер которых превышает емкость дискеты, без явного удаления уже зарезервированных).

    Примеры:

    ■ XCOPY *.DAT В: - скопировать все файлы с расширением DAT из рабочего каталога в текущий каталог диска в приводе В; к

    ■ XCOPY А: - скопировать все файлы из текущего каталога диска в накопителе А в рабочий каталог,

    ■ XCOPY *.BAS *.ВАК - скопировать все файлы с расширением BAS из рабочего каталога в тот же каталог с одновременным изменением расширений на ВАК;

    ■ XCOPY *.* А:\ - скопировать все файлы из рабочего каталога в корневой каталог диска в приводе А;

    ■ XCOPY А:\ В:\ /S/Е - скопировать содержимое диска в приводе А на диск в приводе В.

    Если последний пуст, а первый не содержит файлов с атрибутами Н и S, то диск в приводе В станет логической копией диска в приводе А. В противном случае файловая структура целевого диска пополнится файловой структурой исходного, если не принимать во внимание скрытые и системные файлы;

    ■ XCOPY C:\*.DAT А:\ /S - скопировать все файлы с расширением DAT с диска в приводе С на диск в приводе А с сохранением их размещения в файловой структуре;

    ■ XCOPY С:\А:\ /S/М - скопировать все файлы, которые были модифицированы или созданы после последнего выполнения такой же команды, сохраняя их размещение в файловой структуре, с диска в приводе С на диск в приводе А;

    ■ ATTRIB С:\ +А /S

    XCOPY С:\ А:\ /S/M - скопировать (зарезервировать) файловую структуру диска в приводе С на последовательность дискет в приводе А (за исключением пустых каталогов). Как только очередная дискета заполнится, XCOPY выдаст сообщение «disk fu ll», после чего следует установить чистую дискету и вновь ввести команду XCOPY. Если повторить описанные действия до тех пор, пока все файлы и каталоги не будут продублированы, то на дискетах получится резервная копия жесткого диска. Для восстановления информации на нем в случае ее разрушения можно воспользоваться командой COPY или XCOPY;

    ■ XCOPY C:\LOTUS /D:10-22-91 - скопировать файлы из каталога \LOTUS диска в приводе С, созданные не раньше 22.10.91 г., в рабочий каталог,

    ■ XCOPY C:\L014JS /А - то же, но копируются только файлы, имеющие атрибут А, независимо от даты их создания;

    ■ XCOPY C:\LOTUS /А /D:10-22-91 .- скопировать из каталога \LOTUS диска в приводе С файлы, созданные не раньше 22.10.91 г. и имеющие атрибут А, в рабочий каталог;

    ■ XCOPY C:\LOTUS /А /D: 10-22-91 /S - то же, но дополнительно копируются поддеревья файловой структуры, корни которых содержатся в каталоге \ LOTUS, включая только файлы, удовлетворяющие тем же ограничениям. Пустые каталоги не дублируются;

    ■ XCOPY А:\*.ЕХЕ В:\ /S/Е - скопировать файловую структуру диска в приводе А с учетом только файлов с расширением ЕХЕ и всех (в том числе пустых) каталогов на диск в приводе В. Корнем дубликата будет корневой каталог этого диска.

    Команда REPLACE

    Назначение: копирование файлов с заменой или без замены существующих файлов.

    Тип : внешняя.

    Синтаксис :

    REPLACE pattern

    Комментарии. REPLACE предоставляет пользователю дополнительные по сравнению с ко­мандами COPY и XCOPY возможности по копированию файлов.

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

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

    В командной строке допустимы следующие, переключатели:

    /S - осуществить поиск одноименных выделенным по pattern файлов во всем поддереве файловой структуры с корнем dir и найденные файлы заменить соответствующими файлами-оригиналами путем копирования последних. Ненайденные по целевому аргументу файлы не дублируются. Поддеревья, файловой структуры, доступные по исходному аргу­менту, в глубину при поиске исходных файлов не просматриваются. Этот переключатель несовместим с /А;

    /А - дополнить содержимое dir теми файлами из выделенных по pattern , составные имена которых не зарегистрированы в dir (т.е. проинвертировать действие команды). В результате этого копируются только новые для dir файлы. Переключатель /А несовместим с /S и отменяет действие /R;

    /R - обеспечить возможность замены не только файлов без атрибута R, но и с таким атрибутом. Этот переключатель не имеет смысла указывать совместно с /А;

    /Р - запрашивать у пользователя подтверждение на запись каждого файла на диск по целевому аргументу (для замены или добавления) путем выдачи сообщения «Replace file (Y/N)?»;

    /W - в начале выполнения команды сделать паузу с выдачей на экран дисплея сообщения «Press any key when ready* («Затем нажмите любую клавишу») или «Press any key to continue* («Нажмите любую клавишу для продолжения»).

    По завершении выполнения команды на экран дисплея выводится сообщение

    п file(s) added/replaced

    (n файл(ов) добавлено/заменено)

    No files added/replaced

    (Никакие файлы не добавлены/не заменены)

    Команда REPLACE вырабатывает следующие коды возврата:

    0 - успешное завершение;

    2 - файл не найден;

    3 - маршрут не найден;

    5 - доступ запрещен (попытка замены файла с атрибутом R без переключателя /R);

    8 - недостаточно памяти для выполнения команды;

    11 - ошибка в командной строке;

    15 - ошибочно задан привод.

    Замечания:

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

    Спецификация каталога в качестве исходного аргумента не допускается;

    Файлы с атрибутами Н и/ил и S командой REPLACE не обрабатываются;

    Атрибут /R в дубликат не переносится;

    У каждого дубликата всегда взводится атрибут /А;

    Никакие каталоги командой REPLACE не создаются;

    Переключатель /W обеспечивает удобство работы на ПЭВМ, не оборудованной же­стким диском.

    Примеры:

    ■ REPLACE *.* D: - заменить существующие в текущем каталоге диска в приводе D файлы одноименными файлами из рабочего каталога;

    ■ REPLACE А:\*.* С:\ /S - заменить каждый файл в любом каталоге диска в приводе С, совпадающий с одним из файлов в корневом каталоге диска в приводе А, последним;

    ■ REPLACE A:\*.PRD C:\MSTOOLS /А - дополнить каталог C:\MSTOOLS PRD-файлами из корневого каталога диска в приводе А.

    DOS 4.0. Допустим дополнительный переключатель /U, разрешающий замену только в том случае, когда файл-оригинал создан позже (по дате и времени) подлежащего замене одно­именного файла.

    Команда TYPE

    Назначение: отображение содержимого файла.

    Тип: внутренняя.

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

    Синтаксис

    comp [файл1 ] [файл2 ] [/d ] [/a ] [/l ] [/n= кол_строк ] [/c ]

    Параметры

    файл1 Задание имени и расположения первого файла или набора файлов для сравнения. Для указания нескольких файлов можно использовать подстановочные знаки (* и?). файл2 Задание имени и расположения второго файла или набора файлов для сравнения. Для задания нескольких файлов можно использовать подстановочные знаки (* и?). /d Вывод различий в десятичном формате. (По умолчанию используется шестнадцатеричный формат.) /a Вывод различий в символьном виде. /l Вывод номера строки, в которой обнаружено различие, вместо отображения смещения в байтах. /n= кол_строк Сравнение первых нескольких строк, заданных параметром кол_строк , обоих файлов, даже если эти файлы имеют разный размер. /c Сравнение без учета регистра. /? Отображение справки в командной строке.

    Примечания

    • Сравнение файлов с одинаковыми именами

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

    • Неполное задание параметров файл1 и файл2

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

    • Вывод информации о несовпадениях

      В процессе сравнения программа comp выводит сообщения с указанием расположения несовпадающих байтов в файлах. В каждое сообщение включены сведения о смещении адреса несовпадающих байтов и содержимое этих байт (в шестнадцатеричном формате, если не указан параметр /a или /d ). Эти сообщения имеют следующий формат:

      Ошибка сравнения OFFSET xxxxxxxx

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

      Обнаружено 10 различий. Сравнение завершено.

    • Сравнение файлов разного размера

      Чтобы сравнить файлы разных размеров, необходимо указать параметр /n . Если файлы имеют различные размеры, comp выводит следующее сообщение:

      Разные размеры файлов

      Нажмите клавишу Y для сравнения следующей пары файлов. Нажмите клавишу N для завершения выполнения команды comp .

      При нажатии клавиши Y команда comp продолжает сравнение с заданными параметрами, пока не будет нажата клавиша N или заново введена эта команда.

      При работе с файлами разного размера воспользуйтесь параметром /n , чтобы сравнить только начала файлов.

    • Последовательное сравнение файлов

      Если использованы подстановочные знаки (* и?) для задания нескольких файлов, comp найдет первый файл, удовлетворяющий шаблону файл1 , и выполнит его сравнение с соответствующим файлом файл2 , если он существует. Команда comp выводит результаты сравнения и проводит сравнение всех файлов, удовлетворяющих шаблону файл1 . После завершения работы comp будет выведено следующее сообщение:

      Сравнить другие файлы ?

      Чтобы сравнить другие файлы, нажмите клавишу Y . Команда comp запросит расположения и имена новых файлов. Чтобы завершить сравнение, нажмите клавишу N . При нажатии клавиши Y команда comp запрашивает параметры командной строки. Если эти параметры не заданы, программа comp использует параметры, введенные ранее.

    • Если файлы не найдены

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

    Примеры

    Чтобы сравнить содержимое каталога C:\Reports с содержимым каталога резервных копий \\Sales\Backup\April, введите следующую команду:

    comp c:\reports \\sales\backup\april

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

    comp \invoice\*.txt \invoice\backup\*.txt /n=10 /d

    Windows для общения с компьютером на понятном ему языке. Однако по-прежнему запуск программ осуществляется с помощью обычной командной строки (консоли). Она является родоначальником интерфейса и средством общения пользователя и ПК. Суть работы заключается в том, что команды вводятся в строку с помощью клавиатуры. Этот метод управления часто используют системные администраторы. Обычные пользователи также должны знать основные команды.

    Консоль - что это?

    Запуск программ Windows осуществляется с помощью консоли - командной строки. Это один из видов текстового интерфейса, который стал доступен многим пользователям ОС MS DOS. Вводятся команды в командную строку в ручном режиме. Многие считают консоль устаревшим способом управления, необходимость в котором часто возникает у пользователей и системных специалистов. Командная строка представляет собой черное окно с зеленой надписью расположения и мигающим курсором. В указанное место вводится соответствующая команда для компьютера.

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

    Зачем нужны команды?

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

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

    Как запустить?

    Команды для командной строки Windows запускаются без особых трудностей. Несмотря на графический интерфейс, консоль всегда была и есть главный элемент управления компьютером. Основы работы с консолью пригодятся обычному пользователю. Для запуска командной строки откройте меню: «Пуск» - «Выполнить». Впишите в появившемся окне слово «Cmd», нажмите «Enter». Если в версии операционной системы нет пункта «Выполнить», то сочетание «Win+R».

    В Windows 7 нажмите правой кнопкой мыши на «Пуск», перейдите в «Свойства» - «Настроить», поставьте галочку возле «Выполнить». Если нужно открыть консоль от имени администратора, впишите в строке поиска «Пуск» команду «Cmd», нажмите правой кнопкой на программе «Cmd», выберите «Запуск от имени администратора». На рабочем столе удобно создать ярлык, который будет открывать консоль. Внешний вид окна строки можно изменять по желанию пользователя (цвет, шрифт, расположение).

    Иногда могут возникнуть проблемы с копированием и вставкой текста в командную строку. В случае с консолью кнопки буфера обмена не работают. Если нужно сделать копию, нажмите правой кнопкой мыши по окну, выберите "Пометить", выделите текст левой кнопкой мышки, а затем кликните правой. Для того чтобы вставить текст или надпись, нажмите правой кнопкой мыши в окне командной строки "Вставить". Кроме того, работать с консолью можно "горячими" клавишами на клавиатуре, стрелками "вверх/вниз".

    Основные

    Главные команды для командной строки помогают пользователю решать задачи первостепенной важности в короткие сроки.

    Дополнительные

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

    • Команда «Format» удаляет данные с винчестера, готовит его для копирования. Как пример команды форматирования: «FORMAT диск:/FS:FAT (файловая система)».
    • «FC» команда сравнивает файлы друг с другом.
    • «IPCONFIG» - показывает полную информацию о настройках Сети, а также сообщает о типе сетевого соединения «IPCONFIG/ALL».
    • Команда «PING» проверит доступность сайта. Пример: «PING fb.ru». Наличие цифр в ответе свидетельствует о том, что все в порядке, сайт доступен для посещения.

    Команды для Сети

    Команды командной строки для Сети позволяют эффективно работать в Интернете, исправлять ошибки и настраивать параметры. Если необходимо узнать свой IP-адрес, введите в консоли команду «Ipconfig». В разных вариациях подключения к Интернету можно узнать полную информацию о Сети. После ввода пользователь получит список сетевых подключений, которые используются компьютером. Если компьютер пользователя подключен к Интернету через беспроводную связь Wi-Fi, главный шлюз будет выбран для связи с роутером. В его настройки пользователь может зайти через команду, введенную в консоль. Если компьютер подключен к локальной сети, узнать об IP-адресе можно через командную строку с соответствующим запросом.

    С помощью команд «Ping» и «Tracert» пользователь быстро найдет и устранит проблемы в работе Интернета и браузера. Команда «Netstat-an» отображает сетевые подключения и порты. Это очень полезная программа, ведь она отображает различную сетевую статистику. Ключ «-an» открывает список доступных сетевых подключений, портов и IP-адресов. Команда «Telnet» подключает к одноименным серверам. Если необходимо получить сведения о сетевых настройках, воспользуйтесь командой «Ipconfig». Без дополнительных параметров, команда отображает информацию об IP-адресе. Если нужны конкретные сведения дополните команду «All». Введенная в строку «Ipconfig/flushdns» - очищает кэш в Windows.

    Фильтры

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

    • «More» - отображает содержимое файла;
    • «Find» - ищет указанные символы;
    • «Sort» - сортирует файлы по алфавиту.

    Для того чтобы направить данные из файла используется символ «L», для направления на выход канал «I».

    Выключение

    Кроме встроенных CMD, консоль используют для запуска обычных программ. Для того чтобы ее ввести, достаточно набрать нужное сочетание букв в окне «Выполнить». Если необходим просмотр результатов лучше использовать строку. «SHUTDOWN» - команда, которая завершает работу Windows, если по каким-либо причинам не работает кнопка «Пуск». Она пригодится, в случае выполнения компьютером задачи, которую нельзя прерывать (а пользователю необходимо уйти и не оставлять компьютер включенным на долгое время). Устройство корректно выключится по завершению работы самостоятельно. Это лучше, чем ставить таймер.

    Наберите следующую команду «Shutdown-s-t-1300», нажмите «Enter». Цифры - это время в секундах, через которое выключится устройство. Команда для перезагрузки компьютера из командной строки выглядит следующим образом: «Shutdown-r». Нажмите «Подтвердить» для активации. Команда «At» - запускает ПК в назначенное пользователем время. Эта утилита считывает и группирует задания в операционной системе Windows.

    Форматирование

    Список команд для консоли огромен. Многие из них безобидные и простые, но есть среди них особые, которые требует осторожности со стороны пользователя. Будьте внимательными! Иногда необходимо полностью отформатировать диск или флешку. Команда удаления всех данных выглядит так: «Format С», вспомогательные параметры «/fs» - определяют место файловой системы форматирующего диска, «/v» - задает метку тома, «/a» - размер кластера. Не выполняйте команду форматирования, если не уверены в своих действиях и не знаете, зачем это нужно. Команда удаляет всю информацию с ПК!

    Проверка

    Некоторые команды для командной строки предназначены для проверки дисков на наличие системных ошибок. Команда «CHKDSK» без дополнительных параметров выводит информацию о состоянии жесткого диска. Если будут найдены ошибки, введите дополнительно «/f», что позволит их исправить. Перед тем как проверять диск, заблокируйте его. Если консоль заполнена командами, введите в строку «c/s» для очистки экрана.

    Системные файлы проверит команда «Sfc». С ее помощью можно восстановить поврежденные файлы. Дополняется команда параметрами «/scannow», «/scanonce», «/scanboot», которые проверяют и исправляют системные ошибки в файлах.

    Другие

    Невозможно знать все команды строки, но некоторые из них пригодятся пользователю. Например, команда «Assoc» изменяет связь между расширением и типом файла. Если пользователь желает узнать подробную информацию об операционной системе и состоянии компьютера, ему следует набрать «Systeminfo». С помощью редактора системного реестра «Regent» можно изменять скрытые настройки ОС. Однако если не знаете, что к чему, делать это не рекомендуется из-за риска поломки Windows. Вызвать конфигурацию системы - специальную службу легко, введя в командную строку "Msconfic". Если хотите узнать о командах больше, напишите в строке консоли "Help", с учетом, что в качестве операционной системы выступает седьмая-восьмая версия Windows.

    К полезным командам для пользователя специалисты относят сетевые, системные и фильтры. Команда "At" состоит из целого набора команд, которые используются для установки, переустановки, настройки модема. Она также считается командой-планировщиком. С ее помощью можно изменять, отменять, настраивать задания для удаленного или локального компьютера. В операционной системе Windows лучше использовать вместо команды "At" утилиту "SCHTASKS". Ее возможности намного шире.

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

    Причём не только для профессионалов, но и для обычных пользователей. Хотя для выполнения большинства команд запускать командную строку (cmd) следует от имени администратора.

    Необходимость использования командной строки

    Строка cmd, представляющая собой стандартный инструмент платформы Windows, ничем не отличается в разных версиях операционных систем – и в седьмой, и в восьмой, и в десятой, и даже в XP. И все команды одинаково работают в каждой из них.

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

    Недостатками интерфейса можно назвать:

    • ручной ввод команды с клавиатуры;
    • необходимость запуска CMD от имени администратора (по-другому большинство команд не запускается);
    • достаточно большой список команд, которые трудно запомнить.

    Внешне командная строка во многом напоминает интерфейс системы DOS. И, хотя она позволяет решать намного больше задач, некоторые команды совпадают с устаревшей платформой. Например, «format», «cd» и «dir», необходимые для работы с папками и дисками.

    Работа с интерфейсом

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

    1. Открыть меню «Выполнить» (нажав одновременно Win + R) и ввести команду cmd.exe;
    2. Перейти в папку Windows на системном диске, открыть каталог System32 и запустить файл под названием cmd.exe. Упростить задачу можно, создав ярлык, запускающий это же приложение, и установить его на рабочем столе;
    3. Открыть меню «Пуск», перейти к разделу «Все программы», затем к подразделу «Стандартные» и найти командную строку.

    Следует знать: После первого запуска через меню «Пуск» CMD появляется в верхней его части– в списке чаще всего запускаемых приложений и утилит. И открывать строку можно, работая в любом приложении (даже в игре), всего лишь нажав на клавиатуре кнопку Win.

    Рис. 1. Командная строка операционной системы Windows.

    Стандартный вид командной строки представляет собой чёрное окно с белым текстом. Если этот вариант не устраивает пользователя, он может изменить цвета в зависимости от своих предпочтений.

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

    Рис. 2. Изменение настроек командной строки

    Команды, помогающие работать с CMD

    Ещё больше упростить использование командной строки помогают горячие клавиши – хотя они и не совпадают с привычными комбинациями Windows. Вместо нажатия стандартных наборов Ctrl + C и Ctrl + V, копирование и вставка текста выполняются следующим образом:

    1. Кликнуть по выбранной строке в открытом окне CMD правой кнопкой мыши;
    2. Выбрать пункт «Пометить»;
    3. Выделить текст с помощью левой кнопки;
    4. Ещё раз кликнуть правой кнопкой. После этого вся информация оказывается в буфере обмена операционной системы.

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

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

    Список горячих клавиш

    При работе с командной строкой пользуются следующими «горячими клавишами»:

    • стрелки вверх и вниз позволяют перемещать курсор по окну, включая уже введённые команды;
    • Home и End перемещают курсор, соответственно, в начало и конец строки;
    • стрелки влево и вправо вместе с нажатой одновременно клавишей Ctrl позволяют переместить курсор в заданную сторону на целое слово;
    • Insert, так же как и в любом текстовом редакторе, переключает режимы вставки текста со сдвигом вправо и перезаписи поверх написанных данных;
    • Esc удаляет выделенную информацию;
    • F1 обеспечивает ввод последней записанной команды по одному символу;
    • F5 выводит предыдущую команду;
    • F7 выводит список нескольких последних записей. По умолчанию их количество равно 50.

    Основные команды

    Список основных команд, которые нужны большинству пользователей, сравнительно небольшой и состоит из команд, выполняющих следующие действия:

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

    С помощью командной строки можно даже отформатировать диск (включая системный, который не форматируется из системы Windows любыми другими способами) и даже остановить процесс. А ещё, используя CMD, пользователь намного быстрее получает доступ к редактору реестра и окну изменения конфигурации системы.

    Работа с каталогами

    Основной командой для работы с каталогами является dir. С её помощью можно проверить содержимое открытой директории. А, если открыть требуется другую папку, следует дополнительно указать к ней путь. Например, выбрать «dir C:\» или «dir D:\».

    Рис. 3. Проверка содержимого логического диска C.

    Вторая команда для работы с каталогами – cd. С её помощью можно перейти в любую выбранную папку. Например, написав в командной строке «cd C:\Windows», переходят к системной директории. Для открытия папки на диске, который уже выбран, отдают команду типа «cd /D D:\».

    Рис. 4. Переход с локального диска C на диск D.

    Команда mkdir обеспечивает создание новой папки. А параметр, который после неё задаётся, определяет имя каталога. Так, после введения «mkdir D:\New_Folder», на диске D появляется соответствующая директория. Если же пользователь указывает в списке сразу несколько каталогов (например, «E:\New\Games\Fallout_3»), можно создать целое дерево папок.

    Рис. 5. Создание новой папки из командной строки.

    Выполнение команды rmdir позволяет удалить каталог, указав к нему полный путь. Например, написав «rmdir D:\New_Folder», можно стереть недавно созданную папку. Хотя, если внутри каталога есть другие файлы, на экране появляется сообщение о том, что он не пустой. Удалить непустую папку можно путём введения в строке команды rmdir /S. Перед удалением следует выбрать пункт «Y» (Yes), подтвердив своё действие.

    Рис. 6. Удаление папки с помощью команды rmdir.

    Выключение компьютера

    С помощью команды shutdown можно выключить компьютер – причём, или сразу, или, установив таймер:

    • shutdown /s просто прекращает работу операционной системы, закрывая все незавершённые процессы;
    • при выборе команды shutdown /s /t 3600 таймер будет установлен ровно на час. Если требуется установить любое другое время, вместо 3600 пишется соответствующее количество секунд;

    Рис. 7. Включение автоматического прекращения работы системы.

    • для отмены уже установленного таймера вводится команда shutdown /a.

    Рис. 8. Отмена завершения работы.

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

    Просмотр статистки

    Просмотр статистики работы компьютера начинается с команды systeminfo. Она выдаёт максимальное количество информации о системе Windows. Хотя для получения сведений эффективнее использовать не системную утилиту, а специальные приложения.

    Например, AIDA64 – универсальную программу для сбора сведений, единственным недостатком которой является условно-бесплатная лицензия. Через месяц после использования за утилиту придётся заплатить – от 1400 до 2200 руб. за компьютер, в зависимости от количества покупаемых лицензий.

    Рис. 9. Получение информации о компьютере и операционной системе.

    Утилита driverquery позволяет ознакомиться со списком драйверов и их свойствами. В появляющемся на экране списке можно увидеть тип управляющей программы, дату ссылки и название модуля.

    Рис. 10. Вывод на экран списка драйверов.

    Утилита под названием pathping после запуска показывает сведения о данных, потерянных при передаче между начальным и конечным пунктом. С помощью этой команды вычисляются коэффициенты потери для различных маршрутизаторов. А по результатам работы утилиты определяют проблемы с доступом для отдельных роутеров.

    Рис. 11. Утилита, проверяющая работу сети.

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

    Рис. 12. Проверка активных подключений TCP.

    Команда tasklist выводит на экран список всех процессов, запущенных системой. С её помощью можно ознакомиться с данными, полученными от удалённого компьютера. Хотя, если дополнительные параметры не указаны, информация выдаётся только о текущем устройстве.

    Утилита ipconfig выводит сведения об IP-адресе и других параметрах сетевого адаптера. Вместе с командой применяются дополнительные параметры – например, /all, который позволяет получить сведения о каждом из адаптеров.

    Рис. 13. Получение информации о сетевых подключениях.

    Изменение параметров системы

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

    • список программ, автоматически загружающихся вместе с системой;
    • варианты запуска;
    • параметры загрузки Windows.

    Чаще всего команду используют для того чтобы удалить или добавить приложение на вкладке автозагрузки. А иногда вносят изменения в порядок загрузки операционных систем – если на компьютере их установлены две (например, Windows 10 и Windows XP, каждая из которых может быть более удобной для конкретного пользователя).

    Рис. 14. Вызов меню изменения конфигурации системы.

    Запуск утилиты regedit позволяет открыть редактор системного реестра – одно из самых полезных приложений, с помощью которого избавляются от остатков удалённых программ, вносят изменения в работу служб и исправляют неполадки. Стоит отметить, что изменять любые значения (не говоря уже об удалении) требуется очень осторожно. Ошибки в реестре могут привести к сбоям системы и даже к её переустановке.Читайте также наш материал: ТОП-3 программ для чистки реестра Windows 7.

    Рис. 16. Запуск проверки файлов на системном диске.

    Команда format, не изменяющаяся уже десятки лет, позволяет отформатировать любой диск, включая USB-флешки. При выборе «format C:» форматируется системный раздел. А с помощью дополнительных параметров можно определить файловую систему (/fs), установить метку тома (/y) и даже назначить размеры кластера (/a). Не задавая определённые условия, кластер устанавливается автоматически.

    Рис. 17. Форматирование диска H через командную строку.

    Остановка процессов

    С помощью команды можно остановить конкретный процесс. Для этого может использоваться идентификатор (например, 2616, если речь идёт о графическом редакторе Paint) и параметр /pid. Кроме того, при остановке может применяться название самого процесса и другой параметр /im. Этот же редактор закрывается командой taskkill /im MSPaint.exe.

    Рис. 19. Утилита, восстанавливающая поврежденные системные файлы.

    Очищение экрана

    После выполнения нескольких команд окно заполняется текстом, который может оказаться помехой для дальнейшей работы. Избавиться от лишних данных можно с помощью команды CLS (Clear Screen). После её запуска экран полностью очищается, оставляя место для дальнейших действий пользователя.

    Выводы

    При постоянном применении основных команд они легко запоминаются пользователем. А для того чтобы узнать о новых утилитах или вспомнить названия старых требуется ввести в командной строке /help. На экране появится список возможных команд, которые вряд ли будут полезны для обычного пользователя, но могут упростить работу администраторам локальных сетей.

    12.02.15 21.3K

    Почему в мире творится такой хаос? Да потому что администратор нашей системы забыл о выполнении своих обязанностей. Или просто потерял список cmd команд от нашего мира. Хотя это несколько оригинальный взгляд на существующий порядок вещей, но, тем не менее, он отражает часть нужной нам правды: с помощью командной строки можно легко навести порядок в своем компьютере:

    Что такое командная строка

    Командная строка представляет собой наиболее простой инструмент для управления операционной системой компьютера. Управление происходит с помощью целого ряда зарезервированных команд и набора символов текстовой клавиатуры без участия мыши (в операционной системе Windows ).

    В системах на основе UNIX при работе с командной строкой возможно применение мыши.

    Часть команд пришла к нам еще из MS-DOS . Командную строку также называют консолью. Она применяется не только для администрирования операционной системы, но и для управления обычными программами. Чаще всего в такой набор команд включаются наиболее редко употребляемые.

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

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

    Командной оболочкой Windows для манипуляции и перенаправления команд определенным утилитам и средствам операционной системы является интерпретатор Cmd.exe . Он загружает консоль и перенаправляет команды в понятном для системы формате.

    Работа с командной строкой в операционной системе Windows

    Вызвать консоль в Windows можно несколькими способами:

    Оба способа подразумевают запуск консоли от имени текущего пользователя. То есть со всеми правами и ограничениями, которые наложены на его роль в операционной системе. Для запуска cmd с правами администратора нужно в меню «Пуск » выделить значок программы и в контекстном меню выбрать соответствующий пункт:


    После запуска утилиты можно получить справочную информацию о командах и формате их написания в консоли. Для этого нужно ввести оператор help и нажать на «Enter »:

    Основные команды для работы с файлами и директориями

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

    • RENAME – переименование директорий и файлов. Синтаксис команды:

    RENAME | REN [диск/путь] исходное имя файла/каталога | конечное имя_файла
    Пример: RENAME C:UsersдомашнийDesktoptost.txt test.txt

    • DEL (ERASE) – используется для удаления только файлов, а не каталогов. Ее синтаксис:

    DEL | ERASE [метод обработки] [имя_файла]
    Пример: Del C:UsersдомашнийDesktoptest.txt/P

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


    Более подробно о возможных значениях параметра «метод обработки» можно узнать из технической документации по операционной системе Windows.

    • MD – позволяет создать папку по указанному пути. Синтаксис:

    MD [диск:] [путь]
    Пример:
    MD C:UsersдомашнийDesktoptest1test2

    В примере будет создана подпапка test2 в папке test1 . Если одна из корневых папок пути не существует, то она тоже будет создана:

    • RD (RMDIR ) – удаление определенной папки или всех директорий по указанному пути. Синтаксис:

    RD | RMDIR [ключ_обработки] [диск/путь]
    Пример:
    rmdir /s C:UsersдомашнийDesktoptest1test2

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

    В следующем разделе мы подробно рассмотрим сетевые команды cmd .

    Команды для работы с сетью

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

    • ping – команда служит для мониторинга возможностей сетевого подключения ПК. Удаленному компьютеру отправляется установленное количество пакетов, а затем отправляется им назад. Учитывается время передачи пакетов и процент потерь. Синтаксис:

    ping [-t] [-a] [-n счетчик] [-l размер] [-f] [-i TTL] [-v тип] [-r счетчик] [-s счетчик] [{-j список_узлов | -k список_узлов}] [-w интервал] [имя_конечного_ПК]

    Пример реализации команды:
    ping example.microsoft.com
    ping –w 10000 192.168.239.132

    В последнем примере cmd ping команды запрос посылается адресату с указанным IP адресом. Интервал ожидания между пакетами составляет 10 000 (10 сек). По умолчанию этот параметр установлен на 4 000:

    • tracert – служит для определения сетевого пути к указанному ресурсу путем посыла специального эхо-сообщения через протокол
    • ICMP (Control Message Protocol ). После запуска команды с параметрами выводится список всех маршрутизаторов, через которые проходит путь следования сообщения. Первый в списке элемент является первым маршрутизатором со стороны запрашиваемого ресурса.

    Синтаксис tracer команды cmd :
    tracert [-d] [-h максимальное_число_переходов] [-j список_узлов] [-w интервал] [имя_конечного_ресурса]
    Пример реализации:
    tracert -d -h 10 microsoft.com

    В примере прослеживается маршрут к указанному ресурсу. При этом увеличивается скорость совершения операции за счет применения параметра d, который предотвращает попытки команды получить разрешение на чтение IP адресов. Количество переходов (прыжков ) ограничено 10 с помощью установленного значения параметра h. По умолчанию, количество прыжков равно 30:

    shutdown [{-l|-s|-r|-a}] [-f] [-m [\имя_ПК]] [-t xx] [-c «сообщения»] [-d[u][p]:xx:yy]
    Пример:
    shutdown /s /t 60 /f /l /m \191.162.1.53

    Произойдет выключение (s ) удаленного ПК (m ) с указанным IP адресом (191.162.1.53 ) через 60 секунд (t ). При этом принудительно будет выполнен выход из всех приложений (f ) и сеанса текущего пользователя (l ).