Text
                    В. Э. Фигурнов
ля
ПОЛЬЗОВАТЕЛЯ


В.Э.ФИГУРНОВ IBM PC ДЛЯ ПОЛЬЗОВАТЕЛЯ «ФИНАНСЫ И СТАТИСТИКА» СП «СОВАМИНКО» АГЕНТСТВО «КОМПЬЮТЕРПРЕСС» МОСКВА 1990
ББК 32.973 Ф49 УДК 681.3 Ф49 Фигурнов В.Э. IBM PC для пользователя. - М.: Финансы и статистика, 1990. - 240 с.: ил. ISBN 5-279-00649-1 Излагаются необходимые для практической работы с IBM PC сведения о компьютере, командах операционной системы, редактировании текстов и т.д. Первые главы книги могут служить пособием для начинающих пользователей. Для более опытных пользователей будут полезны главы об архивации файлов, конфигурировании системы, обслуживании жесткого диска, командных файлах, борьбе с компьютерным вирусом и т.д. Приводятся сведения о некоторых вспомогательных программах. Для пользователей, применяющих персональные компьютеры IBM PC или совместимые с ними. 2404040000-038 010(01)-90 Без объявл. ББК 32.973 ISBN 5-279-00649-1 © В.Э.Фигурнов, 1990
ОГЛАВЛЕНИЕ Предисловие 7 Часть 1. Начальные сведения 9 Глава 1. Общие сведения о IBM PC 9 Процессор (11); Накопители на гибких магнитных дисках (дискетах) (12); Накопители на жестком диске (13); Мониторы (13); Клавиатура (15); Принтеры (17); Другие устройства, подключаемые к компьютеру (20). Глава 2. Начальные сведения об операционной системе MS DOS.... 21 Что такое операционная система (21); Диалог пользователя с MS DOS (22); Обзор команд MS DOS (23); Загрузка и выполнение команд (25); Действия при ’’зависании” компьютера или неправильной работе программ (25); Основные составные части MS DOS (26); Начальная за¬ грузка MS DOS (27); Резидентные программы (28). Часть 2. Файловая система MS DOS и основные команды 30 Глава 3. Файлы и каталоги на дисках 30 Что такое файл (30); Имена файлов (30); Запрещенные имена файлов (31); Каталоги (31); Текущий каталог (32); Указание пути к файлу (33); Имена накопителей на дисках (дисководов) (33); Текущий дисковод (33); Полное имя файла (33). Глава 4. Основные команды MS DOS 34 Приглашение MS DOS (34); Ввод команд (34); Формат команд MS DOS (35); Имена команд (35); Символы •• и ? (36); Команда смены текущего дисковода (36); Изменение текущего каталога (36); Вывод файла на эк¬ ран (36); Удаление файлов (37); Просмотр каталога (37); Создание ката¬ лога (39); Уничтожение каталога (39); Переименование файлов (39); Ко¬ пирование файлов (40). Глава 5. Некоторые полезные программы и команды 40 Cis очистка экрана монитора (41); Ned — наглядный переход из катало¬ га в ката.тог (41); park - подготовка компьютера к выключению питания (42); qu - (quick unerase) - восстановление стертого файла (42); ff — (Find File) - поиск файла на диске (43); dv проверка диска на наличие ’’сбойных” участков (43); chkdsk — проверка файловой структуры на дис¬ ке и нахождение ’’потерянных” участков на диске (44); delbak — удаление страховочных копий файлов (т.е. файлов с расширением .bak) на винче¬ стере (45); sd - оптимизация размещения файлов на диске (45); ds —
4 Оглавление сортировка каталогов (46); format - инициализация дискет (46); label - задание метки на дискете (47); si — получение информации о компьютере (47); vtsr — получение информации о резидентных программах (48). Глава 6. Работа с программой Norton Commander 49 Введение (49); Запуск программы Norton Commander (49); Выход из Norton. Commander (49); Общий вид экрана (50); Общий вид панелей Norton Commander (50); Выделенный файл или каталог (51); Использо¬ вание функциональных клавиш (52); Выбор группы файлов (52); Быст¬ рый переход в другой каталог (53); Переход на другой диск (53); Запуск программ и команд DOS (54); Быстрый поиск файла (54); Меню Norton Commander (55); Определение действий Norton Commander в зависимости от расширения имени файла (58); Меню команд пользователя (59); Файл dirinfo (59); Краткая справка по Norton Commander (60). Часть 3. Редактирование текстов 61 Глава 7. Общие сведения о редактировании текстов 61 Глава 8. Текстовый редактор ЛЕКСИКОН 63 Назначение редактора ЛЕКСИКОН (64); Вызов ЛЕКСИКОНа (64); Вы¬ ход из ЛЕКСИКОНа (64); Получение помощи (65); Вид экрана после входа в ЛЕКСИКОН (65); Информационная строка (65); Меню ЛЕКСИ¬ КОНа (66); Перемещение по тексту (66); Ввод текста (67); Корректиров¬ ка текста (68); Операции с участками текста (68); Форматирование тек¬ ста (70); Использование различных шрифтов (71); Контекстный поиск и замена (72); Разделение текста на страницы (73); Печать текстов (74); Загрузка и сохранение текстов (75); Работа с окнами (75); Макро¬ последовательности (77); Переключение с русского на латинский регистр клавиатуры (78); Главное меню ЛЕКСИКОНа (79); Установка ЛЕКСИ¬ КОНа на жесткий диск (79); Краткая справка по ЛЕКСИКОНу (80). Глава 9. Текстовый редактор ChiWriter 81 Начало работы с редактором (83); Сохранение отредактированного доку¬ мента (85); Завершение работы с редактором (85); Переход к редактиро¬ ванию другого документа (85); Вид экрана при редактировании текста (85); Получение подсказки (87); Перемещение по тексту (87); Ввод тек¬ ста (88); Корректировка текста (89); Форматирование текста (89); Рабо¬ та с фрагментами текста (90); Использование различных шрифтов (91); Поиск и замена символов и подстрок (94); Расположение текста на нескольких уровнях строки (96); Рисование линий, таблиц и диаграмм (98); Печать документов (98); Разделение текста на страницы (101); За¬ головки страниц (колонтитулы) (102); Сноски (103); Ключевые последо¬ вательности (105); Двухоконный режим работы (107); Вставка текста из другого файла (108); Предотвращение нехватки оперативной памяти (108); Преобразование текстового файла в файлы ChiWriter и обратные преобразования (109); Краткая справка по ChiWriter (110); Установка редактора ChiWriter на жесткий диск (112). Часть 4. IBM PC для опытных пользователей 114 Глава 10. Пакетные командные файлы 114 Выполнение командных файлов (114); Командные файлы с заменяемыми параметрами (116); Комментарии в командном файле (116); Сообщения при выполнении командного файла (117); Приостановка выполнения-ко¬ мандного файла (117); Переходы в командном файле (118); Проверка ус¬
Оглавление 5 ловий в командном файле (118); Создание диалоговых командных фай¬ лов (119). Глава 11. Архивация файлов 121 Необходимость архивации файлов (121); Архивный файл (121); Про¬ граммы PKZIP и PKUNZIP (121); Простейшие способы использования программ PKZIP и PKUNZIP (122); Программа PKZIP — помещение файлов в архив (123); Режимы программы PKZIP (124); Особые случаи при использовании PKZIP (130); Рекомендации по использованию про¬ граммы PKZIP (130); Указание каталога для временных файлов про¬ граммы PKZIP (132); Программа PKUNZIP - извлечение файлов из ар¬ хива (132); Режимы работы программы PKUNZIP (133); Рекомендации по использованию программы PKUNZIP (140); Использование списка файлов в программах PKZIP и PKUNZIP (140); Замечания об архивации файлов (140). Глава 12. Защита от компьютерного вируса 144 Что такое компьютерный вирус (144); Испорченные и зараженные виру¬ сом файлы (145); Ранняя диагностика наличия вируса (146); Программы для обнаружения и удаления вируса (148); Программы для защиты от вируса (149); Защита программ с помощью запрета записи на диск (151); Действия при заражении компьютера вирусом (152); Профилакти¬ ка против заражения вирусом (154). Глава 13. Конфигурирование системы 156 Копирование файлов с жесткого диска (156); Разбиение жесткого диска (157); Размещение файлов на жестком, диске (159); Написание файла CONFIG.SYS (160); Написание файла AUTOEXEC.BAT (161). Глава 14. Обслуживание жесткого диска 171 Процедура обслуживания жесткого диска (171); Командный файл для об¬ служивания жесткого диска (173); Подготовка компьютера к выключению питания (173). Часть 5. Справочные сведения 175 Глава 15. Справочные сведения о командах MS DOS 175 Обозначения (175); Assign — присваивание дисководу другого логического имени (буквы) (175); Attrib - изменение и отображение атрибутов файла (176); Break - установка режима проверки нажатия [Ctrl-Break] (176) ; Call — вызов командного файла из другого командного файла (177) ; Chkdsk — проверка диска на правильность файловой системы (177); Command - запуск командного процессора MS DOS (179); Copy — копирование файлов (181); Date - вывод информации о дате и установка даты в компьютере (183); Diskcomp — сравнение дискет (по дорожкам) (183); Diskcopy - копирование дискет (по дорожкам) (185); Exit — выход из командного процессора MS DOS (186); Fastopen - убыстрение откры¬ тия файлов (186); Fc — сравнение файлов (186); Find — поиск подстроки в файле или файлах (188); For - выполнение команды MS DOS для набо¬ ра файлов (189); Format - инициализация (форматирование) диска (189); Graftabl — загрузка таблицы символов с кодами 128—255 (193); Graphics - подготовка к печати копии экрана в графическом режи¬ ме (193); Мсору - копирование файлов и каталогов (193); Mode - уста¬ новка режимов работы устройств (194); More - вывод на экран с ожида¬ нием после заполнения каждого экрана (196); Path — установка списка каталогов, в которых производится поиск выполняемых программ (196); Print - печать файлов в ’’фоновом” режиме (параллельно другой
6 Оглавление работе) (197); Set - установка переменной окружения (198); Share — ус¬ тановка режима разделения доступа к файлам (199); Shift — сдвиг пара¬ метров командного файла (200); Sort — сортировка файлов (200); Sys — перенос файлов операционной системы с текущего дисковода на указан¬ ный дисковод (201); Time - вывести информацию о времени или устано¬ вить время в компьютере (201); Tree — вывести список каталогов и фай¬ лов на диске (201); Ver — вывести на экран версию MS DOS (202); Verify — установить или отменить режим проверки при записи на диски (202); Хсору — копирование файлов и каталогов (202). Приложения..... 205 1. Особенности работы на компьютерах с одним дисководом для дискет 205 2. Советы пользователям, имеющим компьютеры без жесткого диска . 206 3. Соответствие клавиш на клавиатурах советских и зарубежных компьютеров 207 4. Действия при ошибках ввода—вывода 207 5. Тексты программ 209 6. Кодировки символов 226 Предметный указатель 233
ПРЕДИСЛОВИЕ Данная книга, как следует из ее названия,, ориентирована на пользователей, т.е. читатель этой книги может быть не программи¬ стом, а человеком, применяющим компьютер для решения приклад¬ ных задач. Изложение материала построено так, чтобы оно было по¬ нятно и тем, кто никогда не писал ни одной программы для ЭВМ. Как известно, большинство книг на русском языке по IBM PC и со¬ вместимым с ним компьютерам предназначено, наоборот, для про¬ граммистов. Впрочем, все программисты являются отчасти и пользо¬ вателями, поэтому книга может быть полезна и программистам, хотя в ней нет сведений об архитектуре IBM PC, о системе команд, о вызо¬ вах MS DOS из программ и многих других сведений, необходимых при программировании для IBM PC. Автор попытался систематически и последовательно изложить ма¬ териал, необходимый для практической работы с IBM PC, включая и такие редко описываемые разделы, как архивация файлов, борьба с компьютерным вирусом, конфигурирование системы, обслуживание жесткого диска и т.д. Почти все рассматриваемые программы и ко¬ манды описаны достаточно подробно. Автор не ставил своей целью заменить документацию no MS DOS и этим программам, но он ста¬ рался сделать так, чтобы читатель мог практически во всех случаях обойтись без нее. Следует заметить, что эта книга (как и любая другая) не содер¬ жит и не может содержать все сведения, которые нужны для овладе¬ ния IBM PC. Для использования пакетов программ, интегрированных систем, баз данных, издательских систем и других программных про¬ дуктов для IBM PC требуется изучение их документации и приобрете¬ ние навыков работы с ними. Этот материал, разумеется, уже выходит за рамки настоящей книги. Однако данная книга (прежде всего пер¬ вые две ее части) будет полезна начинающему пользователю, чтобы после ее прочтения он мог самостоятельно изучать пользовательскую документацию на программные продукты для IBM PC и овладевать навыками работы с нужными ему прикладными программами. Несколько слов о структуре книги. В первой части излагаются на¬ чальные сведения о IBM PC и операционной системе MS DOS, необхо¬ димые для работы на компьютере и для понимания остальных частей книги. Эта часть необходима прежде всего для начинающих пользова¬ телей, никогда прежде не работавших с компьютером IBM PC. Тем, кто уже имеет опыт работы с IBM PC, большинство этих сведений уже известны, и они могут пропустить эту часть книги.
8 Предисловие Вторая часть может служить учебным пособием для начинающих пользователей. В ней рассказывается о файловой системе MS DOS, описываются основные команды MS DOS, а также некоторые полез¬ ные вспомогательные программы. Эти сведения вполне достаточны для большинства пользователей. Как показывает опыт, для изучения этих сведений и овладения соответствующими навыками требуется от одного до пяти дней интенсивной работы. После освоения материала данной части книги начинающий пользователь, как правило, уже до¬ статочно подготовлен для того, чтобы начать овладевать навыками работы с нужными ему прикладными программами. Третья часть книги посвящена редактированию (подготовке) тек¬ стов, с которым приходится иметь дело практически каждому поль¬ зователю компьютера. В этой части излагаются некоторые общие све¬ дения о редактировании текстов с помощью компьютера, а также описываются два простых и удобных редактора текстов — ЛЕКСИ¬ КОН и ChiWriter. Четвертая часть предназначена для более опытных пользователей IBM PC. В ней рассказывается о таких важных вопросах, как архива¬ ция файлов, борьба с компьютерным вирусом, конфигурирование и обслуживание жесткого диска и т.д. В пятой части книги содержится справочная информация о наибо¬ лее полезных командах MS DOS. Полные описания команд MS DOS и команд файла конфигурации системы CONFIG.SYS в книге поместить не удалось из-за ограничений объема. Эти описания и другие сведения, которые не поместились в книге, можно найти в комплекте документации и программ ’’Работа пользователя с персональным компьютером IBM PC”, распространяемым совместным предприятием ’’Интерквадро” (см. информацию в конце книги). В приложениях приведены сведения об описанных в книге про¬ граммах, тексты оригинальных программ, таблицы кодов символов и т.д. Автор выражает благодарность своим коллегам и знакомым, прежде всего, Д.С.Шмерлингу, Б.В.Черкасскому и М.В.Фигурновой, за полезные замечания и предложения при подготовке этой книги. При написании книги в значительной степени использован опыт рабо¬ ты автора и его коллег в совместном советско-франко-итальянском предприятии ’’Интеркв'адро”. Все пожелания и замечания по поводу данной книги будут приня¬ ты автором с благодарностью.
Часть 1 НАЧАЛЬНЫЕ СВЕДЕНИЯ Глава 1 ОБЩИЕ СВЕДЕНИЯ О IBM PC Выпуск компьютеров IBM PC был начат в 1981 г., и они быстро завоевали огромную популярность, у пользователей. IBM PC и совме¬ стимые с ним компьютеры (т.е. компьютеры, на которых работают все программы, разработанные для IBM PC) составляют теперь боль¬ шую часть парка профессиональных ПЭВМ в мире. В настоящее вре¬ мя программное обеспечение,, разработанное для IBM PC, охватывает практически все сферы человеческой деятельности. В СССР выпуска¬ ются компьютеры ЕС1840 и ЕС1841, ’’Искра-1030” и другие, совме¬ стимые с IBM PC. В этой и следующей главах излагаются необходимые сведения о IBM PC, о входящих в него и подключаемых к нему устройствах: процессоре, клавиатуре, мониторе, принтере и т.д. Многим читате¬ лям эти сведения уже известны, и они могут их пропустить. Более существенными для использования компьютера являются сведения о работающих на нем программах и прежде всего — об опе¬ рационной системе. Операционная система — это программа, загру¬ жаемая в компьютер при его включении. Она организует диалог с пользователем, дает возможность удобного доступа к аппаратным ре¬ сурсам компьютера и управляет выполнением всех остальных про¬ грамм. Как правило, персональный компьютер IBM PC работает под управлением операционной системы MS DOS. Персональный компьютер IBM PC включает следующие устройства (рис. 1.1): процессор, выполняющий управление компью¬ тером, вычисления и т.д.; клавиатуру, позволяющую вводить симво¬ лы в компьютер; монитор (или дисплей) для изображения текстовой и графической информации; накопители (или дисководы) для гибких магнитных дисков, используемые для чтения и записи на гибкие магнитные диски (дискеты); накопитель на жестком магнитном дис¬ ке, предназначенный для чтения и записи на несъемный жесткий магнитный диск (винчестер). Кроме того, к компьютеру могут под¬ ключаться принтер — для вывода на печать текстовой и графической
10 Глава 1 Рис. 1.1. Общий вид персонального компьютера IBM PC информации; мышь — устройство, облегчающее ввод информации в компьютер, и другие устройства. Для включения компьютера необходимо включить стабилизатор напряжения, если компьютер подключен через стабилизатор напря¬ жения; включить принтер (если он нужен); включить компьютер (пе¬ реключателем на корпусе компьютера); включить монитор компьюте¬ ра. На экране компьютера появятся сообщения о ходе работы про¬ грамм проверки и начальной загрузки компьютера. Когда начальная загрузка операционной системы будет закончена, появится приглаше¬ ние операционной системы, например С:\> или 20:59 C:\WORK> (вид приглашения может меняться пользователем с помощью коман¬ ды MS DOS prompt). Появление приглашения означает, что операци¬ онная система готова к приему, команд. Для выключения компьютера надо закончить работающие про¬ граммы; ввести команду PARK (и нажать клавишу [Enter]); выклю¬
Общие сведения о IBM PC 11м чить принтер (если он включен); выключить монитор компьютера; выключить компьютер (переключателем на корпусе компьютера); вы¬ ключить стабилизатор, если компьютер подключен через стабилиза¬ тор напряжения. Ниже рассказывается о назначении, функциях и возможностях различных устройств, входящих в компьютер IBM PC или подключа¬ емых к нему. Процессор Процессор персонального компьютера IBM PC содержит: основной микропроцессор, управляющий работой компьютера и выполняющий все вычисления; оперативную память, в которой располагаются программы, вы¬ полняемые компьютером, и используемые программами данные. Емкость оперативной памяти, как правило, равна 640 Кбайтам (байт — единица информации, эквивалентная восьми двоичным циф¬ рам или одному символу из 256 возможных); электронные схемы (контроллеры), управляющие работой раз¬ личных устройств, входящих в компьютер (монитора, накопителей на магнитных дисках и т.д.); порты ввода-вывода, через которые процессор обменивается дан¬ ными с внешними устройствами. Имеются специализированные пор¬ ты, через которые происходит обмен данными с внутренними устрой¬ ствами компьютера, и порты общего назначения, к которым могут подсоединяться различные дополнительные внешние устройства (при¬ нтер, мышь, сетевой адаптер и т.д.). Порты общего назначения быва¬ ют двух видов: параллельные (обозначаемые LPT1—LPT4) и асинхрон¬ ные последовательные (обозначаемые СОМ 1—COM3). Последователь¬ ные порты выполняют ввод и вывод с большей скоростью, чем асинх¬ ронные последовательные, но требуют и большего числа проводов для обмена данными. Основной микропроцессор определяет быстродействие компьюте¬ ра. Исходный вариант компьютера IBM PC и модель IBM PC XT ис¬ пользуют микропроцессор Intel-8088. Сейчас распространен вариант этого микропроцессора с увеличенной производительностью (такто¬ вой частотой). Для обозначения того, что модель компьютера имеет повышенную производительность (тактовую частоту), к названию мо¬ дели компьютера иногда прибавляют ’’Turbo”, например Turbo-XT. Модель Turbo-XT имеет приблизительно в 1,7 раза большую про¬ изводительность по сравнению с моделью IBM PC XT. Модель IBM PC AT использует более мощный микропроцессор Intel—80286 и ее производительность приблизительно в 5—6 раз боль¬ ше, чем у IBM PC XT. Имеются модели IBM PC АТ с повышенной производительностью, скорость их работы в 1,5—2 раза больше, чем у стандартных моделей IBM PC AT. Модели серии PS/2 используют мощный микропроцессор Intel—80386. Их производительность приблизительно в 3—4 раза боль¬ ше, чем у IBM PC АТ. Однако это увеличение производительности су¬ щественно в основном для решения задач, требующих большого объе¬ ма вычислений, так как для основного круга применений персональ-
12 Глава 1 них компьютеров модели IBM PC АТ (и Turbo-AT) обеспечивают до¬ статочно высокую производительность. Микропроцессор Intel—80386 (вариант Inboard—386) может быть вставлен в компьютеры IBM PC XT и IBM PC AT вместо микропро¬ цессоров Intel—8088 и Intel—80286. Это позволяет при умеренных за¬ тратах значительно увеличить скорость работы компьютера. Микропроцессоры Intel-8088, Intel-80286 и Intel-80386 не со¬ держат специальных команд для работы с числами с плавающей точ¬ кой. При необходимости проведения расчетов с числами с плавающей точкой каждая операция над этими числами моделируется с по¬ мощью нескольких десятков операций микропроцессоров Intel—8088/80286/ 80386. Это сильно снижает эффективность приме¬ нения компьютера для научных вычислений, при использовании ма¬ шинной графики и для других применений с интенсивным использо¬ ванием чисел с плавающей точкой. Поэтому в этих случаях следует использовать компьютеры IBM PC г установленным математическим сопроцессором Intel-8087, Intel-80287 или Intel—80387. Этот сопро¬ цессор может быть установлен на любую модель компьютера IBM PC и он увеличивает скорость выполнения операций с плавающей точкой в 5—15 раз. Накопители на гибких магнитных дисках (дискетах) Гибкие диски (дискеты) позволяют переносить документы и про¬ граммы с одного компьютера на другой, хранить информацию, не ис¬ пользуемую постоянно на компьютере, делать архивные копии ин¬ формации, содержащейся на жестком диске. Наиболее распространены дискеты размером 5,25 дюйма (133 мм, рис. 1.2). В настоящее время чаще всего используются дискеты емко¬ стью 360 Кбайт (обозначаемые Double Side/Double Density, DS/DD) и 1,2 Мбайта (Double Side/High Density, DS/HD). Иногда встречаются дискеты прежних лет выпуска, имеющие меньшую емкость либо рассчитанные для использования на дисководах с одной головкой (од¬ носторонние дискеты). ПРОЛЕЗЬ НАКЛЕЙКА ЗАШИТЫ ДИСКЕТЕ ,.ЗАЛИСИ Рис. 1.3. Дискета размером 3,5 дюй¬ ма (89 мм) Рис. 1.2. Дискета размером 5,25 дюй¬ ма (133 мм)
Общие сведения о IBM PC 13 Для записи и чтения дискет емкостью 1,2 Мбайта предназначены специальные накопители, которые устанавливаются на компьютерах моделей IBM PC АТ и PS/2. Эти накопители могут также читать дис¬ кеты емкостью 360 Кбайт, но информация, записанная ими на такие дискеты, плохо считывается на дисководах для дискет емкостью 360 Кбайт. Дискеты емкостью 5,25 дюйма требуют бережного обращения: их надо хранить в бумажном конверте, аккуратно вставлять в дисковод. Нельзя также гнуть и трогать руками открытые участки магнитного покрытия. Следует не допускать попадания пыли на дискету. В компьютерах серии PS/2 часто используются накопители на ди¬ скетах размером 3,5 дюйма (89 мм) и емкостью 0,7 и 1,4 Мбайта (рис. 1.3). Эти дискеты заключены в жесткий пластмассовый кон¬ верт, что значительно повышает их надежность и долговечность. Перед первым использованием дискеты необходимо специальным образом инициализировать. Это делается программой MS DOS FORMAT. На дискетах имеется прорезь для защиты от записи (см. рис. 1.2). Если эту прорезь заклеить, то на дискету нельзя будет произвести за¬ пись (разумеется, при условии, что дисковод исправен). Чаще всего на компьютере имеются два дисковода для дискет. Работа на компьютере, включающем один дисковод для дискет, имеет некоторые особенности, которые обсуждаются в приложении 1. Накопители на жестком диске Накопители на жестком диске (винчестеры) предназначены для постоянного хранения информации, используемой при работе с ком¬ пьютером: программ операционной системы, часто используемых па¬ кетов программ, редакторов документов, трансляторов с языков про¬ граммирования и т.д. Наличие жесткого диска значительно повышает удобство работы с компьютером. Особенности работы на компьютере без жесткого диска обсуждаются в приложении 2. Для пользователя накопители на жестком диске отличаются друг от друга прежде всего своей емкостью, т.е. тем, сколько информации помещается на диске. На моделях IBM PC XT жесткий диск чаще всего имеет емкость 20 Мбайт, на IBM PC AT — 40 Мбайт. Бывают жесткие диски и большей емкости — 80, 160, 300 Мбайт. Мониторы Монитор (дисплей) компьютера IBM PC (см. рис. 1.1) предназна¬ чен для вывода на экран текстовой и графической информации. Мо¬ ниторы бывают цветными и монохромными. Они могут работать в од¬ ном из двух режимов: текстовом и графическом. В текстовом режиме экран монитора условно разбивается на от¬ дельные участки — знакоместа, чаще всего — на 25 строк по 80 сим¬ волов (знакомест). В каждое знакоместо может быть выведен один из 256 заранее заданных символов. В число этих символов входят боль¬ шие и малые латинские буквы, цифры, символы
14 Глава 1 ’ ! @ # $ % -&*()_ + I ‘ - = \ {}[]:;”’<,>.?/ а также псевдографические символы, используемые для вывода на экран таблиц и диаграмм, построения рамок вокруг участков экрана и т.д. Г Т 1 1г 1Г т тг т Г т 1 1 - ■ 1 ь + н 1^ JL пг imi ш II = ■ 1 L ± J IL JL JI IL JL JJ U J I 1 В число символов, и: зображаемых на экране в текстовом режиме могут также входить буквы кириллицы (т.е. буквы русского алфави¬ та). На цветных мониторах каждому знакоместу может соответство¬ вать свой цвет символа и свой цвет фона, что позволяет выводить красивые цветные надписи на экран. На монохромных мониторах для выделения отдельных частей текста и участков экрана используются повышенная яркость символов, подчеркивание и инверсное изображе¬ ние (темные символы на светлом фоне). Графический режим монитора предназначен для вывода на экран графиков, рисунков и т.д. Разумеется, в этом режиме можно также выводить и текстовую информацию в виде различных надписей, при¬ чем эти надписи могут иметь произвольный шрифт, размер букв и т.д. В графическом режиме экран монитора состоит из точек, каждая из которых может быть темной или светлой на монохромных монито¬ рах или одного из нескольких цветов на цветном мониторе. Количе¬ ство точек по горизонтали и вертикали называется разрешающей спо¬ собностью монитора в данном режиме. Например, выражение ’’разре¬ шающая способность 640x200” означает, что монитор в данном режи¬ ме выводит 640 точек по горизонтали и 200 точек по вертикали. Наиболее часто в компьютере IBM PC используются мониторы ти¬ пов MDA, CGA, Hercules, EGA и VGA. Их характеристики приведены в табл. 1.1. Таблица 1.1 Монитор Цвет/моно Текстовый режим Графический режим MDA CGA Hercules EGA VGA Монохромный Цветной Монохромный Цветной Цветной 80x25, 2 цвета 80x25, 16 цветов 80x25, 2 цвета 80x25, 16 цветов 80x43, 16 цветов 80x25, 16 цветов 80x50, 16 цветов 640x200, 2 цвета 640x200, 2 цвета 320x200, 4 цвета 720x348, 2 цвета 640x350, 16 цветов 640x480, 16 цветов В настоящее время мониторы MDA и CGA используются редко, так как они не обладают надлежащей разрешающей способностью, что приводит к быстрому утомлению глаз. Кроме того, они не имеют возможности программной загрузки шрифтов символов, поэтому для
Общие сведения о IBM PC 15 изображения букв кириллицы в текстовом режиме приходится заме¬ нять электронные схемы, хранящие шрифты символов (знакогенера¬ торы). Иногда, впрочем, можно не заменять знакогенератор, а запи¬ сать в него с помощью специальных приборов нужные шрифты сим¬ волов. Монитор EGA в последнее время получил очень широкое распро¬ странение и стал фактическим стандартом для тех применений, в ко¬ торых требуются графические средства приемлемого качества. В не¬ которых применениях, например в полиграфии или обработке изобра¬ жений, требуются специальные мониторы, дающие более высокое ка¬ чество изображения, чем мониторы EGA и VGA. Например, в изда¬ тельской системе полезно иметь монитор с экраном, на котором изо¬ бражается вся печатаемая страница в масштабе 1:1. Такие специаль¬ ные мониторы существуют, но они достаточно дороги и требуют спе¬ циального программного обеспечения. Клавиатура Клавиатура IBM PC предназначена для ввода в компьютер инфор¬ мации от пользователя. На рис. 1.1 показана модель клавиатуры для IBM PC АТ, для дру¬ гих моделей компьютера расположение и число клавиш на клавиату¬ ре может несколько отличаться, но назначение одинаковых клавиш на разных клавиатурах, разумеется, одинаково. На персональных компьютерах советского производства надписи на клавишах могут быть сделаны по-русски (см. приложение 3, содержащее таблицу со¬ ответствия надписей на клавишах на советских и зарубежных компь¬ ютерах). Кроме того, у персональных компьютеров советского произ- □ Рис. 1.4. Клавиатура компьютера IBM PC (модель клавиатуры для IBM PC AT)
16 Глава 1 водства на клавиатуре имеются клавиши ”РУС” и ”ЛАТ” для пере¬ ключения с русского шрифта на латинский и обратно. Расположение латинских букв на клавиатуре IBM PC такое же, как на английской пишущей машинке, а букв кириллицы — как на русской пишущей машинке. В дальнейшем изложении мы будем для обозначения клавиш употреблять надпись на клавише стандартной клавиатуры, заключен¬ ную в квадратные скобки. Например, [Shift] обозначает клавишу с надписью ’’Shift”. Ввод прописных и строчных букв. Для ввода прописных букв и других символов, располагающихся на верхнем регистре клавиатуры, имеется клавиша [Shift]. Например, чтобы ввести строчную букву ”d”, надо нажать клавишу, на которой изображено ”D”, а чтобы вве¬ сти прописную букву ”D”, надо нажать клавишу [Shift] и, не отпу¬ ская ее, нажать на клавишу ”D”. Клавиша [Caps Lock] служит для фиксации режима прописных букв. Это удобно при вводе текста, состоящего из таких букв. .По¬ вторное нажатие клавиши [Caps Lock] отменяет режим прописных букв. В режиме [Caps Lock] нажатие клавиши [Shift] дает возмож¬ ность ввода строчных букв. Иногда клавиша [Caps Lock] используется для других целей, например для переключения на русский алфавит. Переключение на другой алфавит. Переключение клавиатуры с режима ввода латинских букв на режим ввода русских букв на персо¬ нальных компьютерах советского производства осуществляется с по¬ мощью клавиш ”РУС” и ”ЛАТ”. На компьютерах зарубежного произ¬ водства это переключение выполняется специальной программой - драйвером клавиатуры. Эта программа, как правило, запускается в начале работы с компьютером и затем она постоянно находится в оперативной памяти компьютера. Функции этой программы — восп¬ ринимать нажатия клавиш на клавиатуре и передавать соответствую¬ щие символы операционной системе MS DOS. После нажатия опреде¬ ленной комбинации клавиш драйвер клавиатуры начинает передавать в компьютер символы другого алфавита. Одни драйверы используют для переключения на другой алфавит клавишу [Caps Lock], другие - одновременное нажатие обеих клавиш [Shift] или одновременное на¬ жатие клавиш [Ctrl] и [Alt], бывают и другие способы переключения. Специальные клавиши клавиатуры. Кроме алфавитно-цифровых клавиш и клавиш со знаками пунктуации, на клавиатуре имеется большое число специальных клавиш. Клавиша [Enter] (на некоторых клавиатурах — [Return] или [CR]) предназначена для окончания ввода строки. Например, при вводе ко¬ манд MS DOS ввод каждой команды должен оканчиваться нажатием клавиши [Enter]. Клавиша [Del] (Delete — удаление) используется для удаления символа, находящегося под курсором. Клавиша [Ins] (Insert — вставка) предназначена для переключения между двумя режимами ввода: ввода с раздвижкой символов (встав¬ ка) и ввода с замещением ранее набранных символов (замена).
Общие сведения о IBM PC 17 Клавиша [Backspace] (стрелка влево над клавишей [Enter]) уда¬ ляет символ, находящийся слева от курсора. Клавиши [Ч Ы, [t], [41, [Home], [End], [PgUp], [PgDn] называют клавишами управления курсором. Как правило, нажатие на них при¬ водит к перемещению курсора в соответствующем направлении или к ’’перелистыванию” изображаемого на экране текста. Клавиша [NumLock] (блокировка цифр) включает и выключает режим, в котором при нажатии на клавиши [Ноте], [т], [PgUp], [<-], [-►], [End], [1], [PgDn], [Ins] и [Del], расположенные в правой части клавиатуры, в компьютер вводятся цифры 1—9, 0 и точка. Этот ре¬ жим удобен для ввода чисел. Клавиша [Esc] (escape - убегать, спасаться), как правило, исполь¬ зуется для отмены какого-либо действия, выхода из режима програм¬ мы и т.д. Функциональные клавиши [Fl]—[F10] (на некоторых клавиатурах [Fl]—[F12]) предназначены для различных специальных действий. Их действие определяется выполняемой программой. Клавиши [Ctrl] и [Alt]. На клавиатуре имеются специальные кла¬ виши [Ctrl] и [Alt]. Как и клавиша [Shift], они предназначены для из¬ менения значений других клавиш. Клавиши [Ctrl] и [Alt] вводятся в комбинации с другими клавишами, и выполняющаяся программа мо¬ жет особым образом реагировать на такие комбинации клавиш. Например, в описании программы может быть написано, что для выполнения определенного действия следует ввести (или нажать) [Alt-Х]. Это означает, что пользователь должен нажать клавишу [Alt] и, не отпуская ее, нажать на клавишу ”Х”. Клавиша [Alt] и клавиши [0]—[9], расположенные в правой части клавиатуры (т.е. клавиши перемещения курсора и клавиша [Ins]), да¬ ют возможность вводить в компьютер произвольные символы, в том числе и те, которых нет на клавиатуре. Для этого необходимо нажать клавишу [Alt], не отпуская ее, набрать десятичный код нужного сим¬ вола на клавишах 0—9 в правой части клавиатуры, а затем отпустить клавишу [Alt]. Особые комбинации клавиш. Имеются комбинации клавиш, обра¬ батываемые специальным образом: [Shift-PrtScr] — печать на принтере копии содержимого экрана; [Ctrl-Break] - завершение работы выполняемой программы или команды; [Ctrl-Alt-Del] — (одновременное нажатие клавиш [Ctrl], [Alt] и [Del]), перезагрузка MS DOS (см. гл. 2). Принтеры Принтер (или печатающее устройство) предназначен для вывода информации на бумагу. Все принтеры могут выводить текстовую ин¬ формацию, многие принтеры могут выводить также и графическую информацию (рисунки, графики и т.д.). Некоторые принтеры могут выводить цветные изображения.
18 Глава 1 Рис. 1.5. Матричный принтер Существует несколько тысяч моделей принтеров, которые могут использоваться с IBM PC. Как правило, применяются принтеры сле¬ дующих типов: матричные, струйные, литерные и лазерные. Матричные (или точечно-матричные) принтеры — наиболее рас¬ пространенный тип принтеров для IBM PC (рис. 1.5). Принцип печати этих принтеров таков: печатающая головка при¬ нтера содержит вертикальный ряд тонких металлических стержней (иголок). Головка движется вдоль печатаемой строки, а стержни в нужный момент ударяют по бумаге через красящую ленту. Это и обеспечивает формирование на бумаге символов и изображений. В дешевых моделях принтеров используется печатающая головка с 9 стержнями. Качество печати у таких принтеров посредственное, но его можно несколько улучшить с помощью печати в несколько проходов (от двух до четырех). Более качественная и быстрая печать обеспечивается принтерами с. 24 печатающими иголками (24-точечны¬ ми принтерами). Скорость печати точечно-матричных принтеров — от 60 до 10 с на страницу. Струйные принтеры. В этих принтерах изображение формируется микрокаплями специальных чернил, выдуваемых на бумагу с по¬ мощью сопел. Этот способ печати обеспечивает более высокое качест¬ во печати по сравнению с матричными принтерами, он очень удобен для цветной печати. Однако струйные принтеры дороже матричных и требуют более тщательного ухода и обслуживания. Скорость печати струйных принтеров приблизительно такая же, как у матричных, — от 60 до 10 с на страницу. Литерные принтеры обеспечивают высокое качество печати, но набор печатаемых символов у них ограничен. У наиболее распростра¬ ненных моделей таких принтеров количество символов в наборе недо¬ статочно для печати текстов с русскими и английскими буквами.
Общие сведения о IBM PC 19 Кроме того, такие принтеры не могут выводить графическую инфор¬ мацию. Скорость печати литерных принтеров невысока — от 15 мин до 20 с на страницу. Лазерные принтеры обеспечивают в настоящее время наилучшее (близкое к типографскому) качество печати. В этих принтерах для печати используется принцип ксерографии: изображение переносится на бумагу со специального барабана, к которому электрически притя¬ гиваются частички краски. Отличие лазерного принтера от обычного ксерокопировального аппарата состоит в том, что печатающий бара¬ бан электризуется с помощью луча лазера по командам из компьюте¬ ра. Лазерные принтеры, хотя и достаточно дороги (приблизительно в 2-3 раза больше стоимости IBM PC XT), являются наиболее удоб¬ ными устройствами для получения качественных печатных докумен¬ тов. Скорость печати лазерных принтеров — от 15 до 3 с на страницу. Потребительские качества принтеров. Перечислим основные ка¬ чества принтеров, определяющие их сравнительные достоинства с точки зрения пользователя. Качество и скорость печати — обеспечивает ли принтер необхо¬ димое качество печати, и если да, то с какой скоростью. Так, одни принтеры (например, лазерные) могут печатать качественные доку¬ менты со скоростью 5 с на страницу, а другие (например, 9-точечные матричные принтеры) требуют около 5 мин для печати страницы тек¬ ста с качеством, близким к качеству пишущей машинки. Наличие русских букв — имеется ли у данного принтера возмож¬ ность печати русских букв, и если да, то как она обеспечивается. а) Шрифты русских букв могут иметься в самом принтере (в его постоянном запоминающем устройстве). В этом случае после включе¬ ния принтер сразу готов к печати текстов с русскими буквами. Если коды русских букв в принтере такие же, как в компьютере, русские тексты могут печататься так же, как и английские, например коман¬ дами MS DOS print или сору. Если же коды русских букв в принтере не такие, как в компьютере, то для печати русских текстов необходи¬ мо использовать специальные программы. В этом случае либо для пе¬ чати файла, содержащего текст с русскими буквами, необходимо за¬ пустить программу печати этого файла, либо в начале работы с ком¬ пьютером запускается постоянно находящаяся в оперативной памяти (резидентная) программа, которая перекодирует все русские буквы, посылаемые на принтер, в соответствующие им коды принтера. По¬ следний вариант, как правило, более удобен, хотя он и уменьшает емкость оперативной памяти, доступной другим программам. б) Шрифты русских букв могут загружаться с помощью про¬ грамм. В этом случае перед печатью русских текстов необходимо за¬ пустить специальную программу для загрузки шрифтов русских букв. При выключении принтера (а при сбоях во время печати иногда при¬ ходится выключать и затем включать принтер) шрифты русских букг пропадают из его памяти, и необходимо снова запустить программу для загрузки шрифтов русских букв.
20 Глава 1 Как и в случае (а), желательно, чтобы коды русских букв в при¬ нтере были такие же, как в компьютере, так как при этом для печа¬ ти русских текстов не требуется использование специальных про¬ грамм. в) Русские буквы могут печататься только в графическом режиме, т.е. так же, как печатаются рисунки. Печать в графическом режиме дает возможность получения любых шрифтов, однако печать при этом, как правило, в несколько раз медленнее, чем в обычном (тек¬ стовом) режиме. Печать текстов может выполняться специальными программами или редакторами документов. Надежность — какова надежность принтера при печати типичных документов и при работе с имеющейся у пользователя бумагой. Возможность автоматической подачи бумаги при печати на от¬ дельных листах бумаги. Если такой возможности принтер не предо¬ ставляет, то при печати на отдельных листах бумаги кто-то должен стоять у принтера и вставлять листы бумаги в принтер. Шрифты, — какие шрифты букв поддерживает принтер. Некото¬ рые принтеры предоставляют большое количество (иногда несколько десятков) шрифтов, а некоторые — только один. Смена красящих элементов — какова продолжительность работы принтера с данной красящей лентой (кассетой крясящего порошка или чернил), обеспечивается ли их замена. Многие пользователи, не имея сменных кассет с красящей лентой, заменяют красящую ленту в кассете на" ленту для пишущей машинки, предварительно сварив ее в кольцо с помощью паяльника, или же печатают без красящей лен¬ ты через копирку. Замена красящего порошка для лазерного принте¬ ра или специальных чернил для струйного принтера с помощью та¬ ких ’’домашних средств” невозможна, поэтому следует обеспечивать поставку этих красящих элементов. Совместимость с имеющимися программами. Различные принте¬ ры имеют различные команды для управления сменой шрифтов, дви¬ жением бумаги, рисованием графических изображений и т.д. Как правило, прикладные программы обеспечивают работу только с наи¬ более распространенными типами принтеров. Поэтому желательным качеством принтера является его совместимость по управляющим ко¬ мандам с наиболее распространенными принтерами, например с мат¬ ричными принтерами Epson или IBM Graphics, с лазерными принте¬ рами Hewlett-Packard или языком описания страниц PostScript. Другие устройства, подключаемые к компьютеру Мышь — манипулятор для ввода информации в компьютер. На¬ звание ’’мышь” это устройство получило за свой внешний вид (см. рис. 1.1) и способ использования. Мышь представляет собой неболь¬ шую коробочку (обычно серого цвета) с двумя или тремя клавишами, легко умещающуюся в ладони. Вместе с проводом для подключения к компьютеру это устройство действительно напоминает мышь с хво¬ стом. Чтобы изменить положение курсора на экране монитора, поль¬ зователь перемещает мышь по столу или другой ровной поверхности. Когда необходимо выполнить то или иное действие, например выпол¬ нить пункт меню, на который указывает курсор, пользователь нажи¬
Общие сведения о IBM PC 21 мает ту или иную клавишу мыши. Некоторые прикладные програм¬ мы рассчитаны только на работу с мышью, но большинство про¬ грамм, работающих с мышью, допускают также ввод с клавиатуры. Однако при использовании мыши скорость работы пользователя, как правило, в 2-3 раза выше. Плоттер — устройство для вывода рисунко.в и другой графической информации на бумагу. Плоттеры несколько дешевле, чем лазерные принтеры, но скорость печати у них ниже. Графопостроитель - устройство для вывода чертежей на бумагу. Имеются графопостроители, рассчитанные на размер бумаги пишу¬ щей машинки (формат А4), а бывают графопостроители, выдающие чертежи размером 2 х 2 м и более. Сканер — устройство для считывания графической и текстовой информации в компьютер. Сканеры могут распознавать шрифты букв, что дает возможность быстро вводить напечатанный (а иногда и рукописный) текст в компьютер. Музыкальная приставка — дает возможность исполнять музыку с помощью компьютера. Без этой приставки компьютер может выво¬ дить в каждый момент звук только одного тона, что дает такие же музыкальные возможности, как игра на фортепьяно одним пальцем. Сетевой адаптер - дает возможность подключать компьютер в ло¬ кальную сеть. При этом пользователь может получать доступ к дан¬ ным, находящимся на других компьютерах. Стриммер - устройство для быстрого сохранения всей информа¬ ции, находящейся на жестком диске. Стриммер записывает информа¬ цию на кассеты с магнитной лентой, похожие на кассеты для быто¬ вых магнитофонов, только несколько большего размера. Обыкновен¬ ная емкость стриммера — 60 Мбайт, но бывают стриммеры и большей емкости. Глава 2 НАЧАЛЬНЫЕ СВЕДЕНИЯ ОБ ОПЕРАЦИОННОЙ СИСТЕМЕ MS DOS Что такое операционная система Операционная система - это программа, которая загружается при включении компьютера. Она производит диалог с пользователем, осуществляет управление компьютером, его ресурсами (оперативной памятью, местом на дисках и т.д.), запускает другие (прикладные) программы на выполнение. Операционная система обеспечивает поль¬ зователю и прикладным программам удобный способ общения (интер¬ фейс) с устройствами компьютера. Основная причина необходимости такой программы, как операци¬ онная система, состоит в том, что элементарные операции для работы
22 Глава 2 с устройствами компьютера и управления ресурсами компьютера — это операции очень низкого уровня, и действия, которые необходимы пользователю и прикладным программам, на самом деле состоят из .нескольких сотен или тысяч таких элементарных операций. Например, накопитель на магнитных дисках ’’понимает” только такие элементарные операции, как включить/выключить двигатель дисковода, установить читающие головки на определенный цилиндр, выбрать определенную читающую головку, прочесть информацию с дорожки диска компьютер и т.д. Поэтому для выполнения даже та¬ кого несложного действия, как копирование файла с одной дискеты на другую, необходимо выполнить тысячи операций по запуску ко¬ манд дисководов, проверке их выполнения, поиску и обработке ин¬ формации в таблицах размещения файлов на дисках и т.д. Задача еще усложняется следующим: ♦ имеется около десятка форматов дискет, и операционная систе¬ ма должна уметь работать со всеми этими форматами. Для пользова¬ теля работа с дискетами различного формата должна осуществляться абсолютно одинаково; ♦ файл на дискетах занимает определенные участки, причем поль¬ зователь не должен ничего знать о том, какие именно. Все функции по обслуживанию таблиц размещения файлов, поиску информации в них, выделению места для файлов на дискетах выполняются операци¬ онной системой, и пользователь может ничего не знать о них; ♦ во время работы программы копирования может возникать не¬ сколько десятков различных особых ситуаций, например сбой при чтении или записи информации, неготовность дисководов к чтению или записи, отсутствие места на дискете для копируемого файла и т.д. Для всех этих ситуаций необходимо предусмотреть соответствую¬ щие сообщения и корректирующие действия (см., например, приложение 4). Назначение операционной системы состоит прежде всего в том, чтобы скрыть от пользователя эти сложные и ненужные ему подроб¬ ности и предоставить ему удобный интерфейс для работы. Операцион¬ ная система выполняет также такие вспомогательные действия, как копирование или печать файлов. Кроме того, операционная система осуществляет загрузку в оперативную память всех программ, переда¬ ет им управление в начале их работы, выполняет различные вспомо¬ гательные действия по запросу выполняемых программ и освобожда¬ ет занимаемую программами оперативную память при их заверше¬ нии. Диалог с MS DOS Когда MS DOS готова к диалогу с пользователем, она выдает на экран приглашение, например А> или С:\> Это означает, что MS DOS готова к приему команд. Диалог пользователя с MS DOS осуществляется в форме команд. Каждая команда пользователя означает, что MS DOS должна выпол¬
Начальные сведения о MS DOS 23 нить то или иное действие, например напечатать файл или выдать на экран оглавление каталога. Команда MS DOS состоит из имени команды и, возможно, пара¬ метров, разделенных пробелами. Имя команды MS DOS и параметры могут набираться как прописными, так и строчными латинскими бук¬ вами. Ввод каждой команды заканчивается нажатием клавиши [Enter]. Обзор команд MS DOS Ниже приводятся краткие сведения о командах MS DOS: назва¬ ния и описания назначения команд. Эти сведения дают только самое общее представление о том, какие действия выполняют команды MS DOS. Сведения о наиболее часто используемых командах MS DOS да¬ ются в части 2 настоящей книги, справочная информация о некото¬ рых наиболее полезных командах содержится в части 5. Команды MS DOS бывают двух типов: внутренние и внешние. Внутренние команды выполняются самим командным процессо¬ ром MS DOS (программой COMMAND.COM, см. ниже). Эти команды следующие: BREAK — установить режим проверки ввода комбинации CD [Ctrl—С]. — сменить текущий каталог или показать им к теку¬ CLS COPY CTTY щего каталога. — очистить экран монитора. — копирование файлов. — сменить устройство ввода-вывода для команд MS DOS. DATE DEL DIR ECHO EXIT — получить или изменить текущую дату. — удаление файлов. — выдать список файлов в каталоге. — выдать сообщение из пакетного командного файла. — окончить работу командного процессора COMMAND.COM. FOR GOTO IF MD PATH PAUSE — организация циклов. — переход на метку в пакетном командном файле. — проверка условия в пакетном командном файле. — создать новый каталог. — установить список каталогов для поиска команд. — приостановить выполнение пакетного командного PROMPT REM REN RD SET SHIFT файла. — установить вид приглашения MS DOS. — комментарий в пакетном командном файле. — изменить имя файла. — удалить каталог. — установить переменную окружения. — сдвиг номеров параметров пакетного командного файла.
24 Глава 2 TIME TYPE VER VERIFY — получить или установить текущее время. — просмотр файла (вывод файла на экран). — выдать номер версии MS DOS. — установить или отменить режим проверки правиль¬ ности записи на диск. VOL — вывод метки диска. Внешние команды MS DOS — это программы, поставляемые вме¬ сте с операционной системой в виде отдельных файлов. Эти команды таковы: APPEND — задать дополнительные каталоги для поиска данных. ASSIGN — назначить дисководу другое логическое имя (бук- ву). ATTRIB BACKUP CHKDSK — установить или показать атрибуты файла. — создать архивные копии файлов. — проверка диска на правильность файловой системы. COMMAND — запустить командный процессор MS DOS. DEBUG — просмотр, изменение, дизассемблирование файлов. DISKCOMP - сравнение дискет. DISKCOPY — копирование дискет. EDLIN EXE2BIN — примитивный редактор текстов. — преобразование .EXE — файла в двоичный код. FASTOPEN — ускорение открытия файлов. FC FDISK FIND FORMAT — сравнение файлов. — разметка жесткого диска. — поиск подстроки в файлах. — форматирование (инициализация) диска. GRAFTABL - загрузка таблицы шрифтов символов с кодами 128-255. GRAPHICS — подготовка к печати графической копии экрана. JOIN — логически присоединить дисковод к указанному ка¬ LABEL LINK MD MODE MORE PRINT талогу. — узнать или установить метку диска. — редактор связей. — создать новый каталог. — установить режимы работы устройств. — постраничная выдача на экран монитора. — распечатка на принтере текстовых файлов в "фоновом” режиме. RECOVER — восстановить файл, содержащий ’’сбойные” участ¬ REPLACE RESTORE ки . — заменить файлы их новыми версиями. — прочитать файлы из архива, созданного с помощью команды BACKUP. SHARE — установить многопользовательский режим исполь¬ SORT SUBST SYS зования файлов. — сортировка данных. — заменить имя каталога обозначением дисковода. — скопировать системные файлы на диск.
Начальные сведения о MS DOS 25 TREE — вывести структуру каталогов на диске. XCOPY — копирование файлов (имеет больше возможностей, чем СОРУ). Загрузка и выполнение команд Когда пользователь вводит команду, которая не относится к чис¬ лу внутренних команд MS DOS, командный процессор ищет програм¬ му с именем, указанным в команде. Поиск проводится среди файлов со следующими расширениями: .СОМ — программные файлы; .EXE — программные файлы (в другом формате); .ВАТ -- пакетные командные файлы. Поиск выполняется в том порядке, в котором эти расширения пе¬ речислены выше. Если пользователь не указал, в каком каталоге сле¬ дует искать программу, то поиск производится в текущем каталоге (см. следующую главу) и в каталогах, заданных командой MS DOS Path. Если нужная программа в этих каталогах не найдена, то на эк¬ ран выводится сообщение Bad command or file name (Неверное имя команды или программы) Если пользователь указал, в каком каталоге находится нужная ему программа, то поиск производится только в этом каталоге. Когда командный процессор находит исполнимый файл (т.е. файл с расширением .СОМ или .EXE), то он выполняет загрузку это¬ го файла в память и передает ему управление, чтобы этот файл мог выполнить свою работу. Если найденный файл имеет расширение ”.ВАТ”, т.е. является командным файлом (т.е. файлом пакетной обработки), то он содер¬ жит в формате текстового файла (в коде ASCII) последовательность команд, которые должны выполняться так, как будто они вводятся с клавиатуры. Пользователь может создавать свои программные файлы и файлы пакетной обработки, и MS DOS будет запускать их на выполнение так же, как она запускает свои программы. Действия при ’’зависании” компьютера или неправильной работе программ Иногда выполняемая программа начинает работать неправильно или же не реагирует на нажатия клавиш и т.д. В этом случае выпол¬ нение программы следует прекратить. Это делается так. Сначала надо одновременно нажать на клавиши [Ctrl] и [Break], чтобы прекратить выполнение программы или вывести ее из состояния ’’зависания”. Ес¬ ли это не помогает, то надо перезагрузить MS DOS. Для этого следует одновременно нажать на клавиши [Ctrl], [Alt] и [Del], а если это не помогает, то клавишу ’’Reset” на корпусе компьютера. Если такой клавиши нет, то надо выключить компьютер, а затем включить его.
26 Глава 2 Основные составные части MS DOS Операционная система MS DOS состоит из следующих частей. Базовая система ввода-вывода (BIOS), находящаяся в постоянной памяти (постоянном запоминающем устройстве, ПЗУ) компьютера. Эта часть операционной системы является "встроенной” в компьютер. Ее назначение состоит в выполнении наиболее простых и универсаль¬ ных услуг операционной системы, связанных с осуществлением вво¬ да-вывода. Базовая система ввода-вывода содержит также тест функ¬ ционирования компьютера, проверяющий работу памяти и устройств компьютера при включении его электропитания. Кроме того, базовая система ввода-вывода содержит программу вызова загрузчика опера¬ ционной системы. Загрузчик операционной системы — это очень короткая програм¬ ма, находящаяся в первом секторе каждой дискеты с операционной системой MS DOS и жесткого диска (винчестера). Функция этой про¬ граммы заключается в считывании в память еще двух модулей опера¬ ционной системы, которые и завершают процесс загрузки MS DOS. Дисковые файлы IO.SYS и MSDOS.SYS (впрочем, они могут на¬ зываться и по-другому, например IBMBIO.COM и IBMDOS.COM, на¬ звания меняются в зависимости от версии операционной системы). Они загружаются в память загрузчиком операционной системы и ос¬ таются в памяти компьютера постоянно. Файл IO.SYS представляет собой дополнение к базовой системе ввода-вывода в ПЗУ. Файл MSDOS.SYS реализует основные высокоуровневые услуги MS DOS. Командный процессор MS DOS обрабатывает команды, вводимые пользователем. Командный процессор находится в дисковом файле COMMAND.COM на диске, с которого загружается операционная сис¬ тема. Некоторые команды пользователя, например type, dir или сору, командный процессор выполняет сам. Такие команды называются внутренними. Для выполнения остальных (внешних) команд пользо¬ вателя командный процессор ищет на дисках программу с соответст¬ вующим именем, и, если находит ее, то загружает в память и переда¬ ет ей управление. По окончании работы программы командный про¬ цессор удаляет программу из памяти и выводит сообщение о готовно¬ сти к выполнению команд (приглашение MS DOS). Внешние команды MS DOS — это программы, поставляемые вме¬ сте с операционной системой в виде отдельных файлов. Эти програм¬ мы выполняют действия обслуживающего характера, например фор¬ матирование дискет, проверку дисков и т.д. Драйверы устройств — это специальные программы, которые до¬ полняют систему ввода-вывода MS DOS и обеспечивают обслужива¬ ние новых устройств или нестандартное использование имеющихся устройств. Например, с помощью драйверов возможна работа с ’’элек¬ тронным диском”, т.е. частью памяти компьютера, с которой можно работать так же, как с диском. Драйверы загружаются в память ком¬ пьютера при загрузке операционной системы, их имена указываются в специальном файле CONFIG.SYS. Такая схема облегчает добавление
Начальные сведения о MS DOS 27 новых устройств и позволяет делать это, не затрагивая системные файлы MS DOS. Начальная загрузи DOS Начальная загрузка MS DOS выполняется автоматически при включении электропитания компьютера, яри нажатии на клавишу "Reset” на корпусе компьютера (такая клавиша, есть не у всех моде¬ лей компьютеров), а также при одновременном нажатии клавиш [Ctrl], [Alt] и [Del] на клавиатуре. Для выполнения начальной загруз¬ ки MS DOS необходимо, чтобы на дисководе А для гибких дисков бы¬ ла установлена дискета с записанной операционной системой MS DOS или чтобы компьютер имел жесткий диск (винчестер) с записанной на нем операционной системой MS DOS. Как правило, на жесткие диски операционная система MS DOS записывается фирмой-поставщиком компьютеров. В начале загрузки работают программы проверки оборудования, находящиеся в постоянной памяти компьютера. Если они находят ошибку, то выводят код ошибки па экран. Если ошибка не критиче¬ ская (т.е. дающая возможность продолжения работы), то пользовате¬ лю предоставляется возможность продолжить процесс загрузки, на¬ жав клавишу [F1] на клавиатуре. Если же неисправность критиче¬ ская, то процесс загрузки прекращается. В любом случае о возник¬ шей ситуации и о выданном коде ошибки следует сообщить специали¬ стам по техническому обслуживанию компьютеров. После окончания работы программ тестирования оборудования программа начальной загрузки пытается прочесть с диска, установ¬ ленного на дисководе А, программу-загрузчик операционной систе¬ мы. Если на дисководе А нет дискеты, то загрузка операционной сис¬ темы будет производиться с жесткого диска (винчестера). Если на ди¬ сководе А находится не дискета с операционной системой, а какая- либо другая дискета, то будет выдано сообщение об ошибке Non-system disk or disk error Replace and strike any key when ready (Несистемный диск или ошибка на диске. Замените диск и нажмите любую клавишу). Следует поставить на дисковод А дискету с операционной систе¬ мой, если Вы хотите загрузить компьютер с дискеты, либо открыть дверцу дисковода или вынуть дискету из дисковода, если Вы хотите загрузить компьютер с жесткого диска (винчестера). После этого сле¬ дует нажать любую буквенно-цифровую клавишу, пробел или [Enter] для продолжения процесса загрузки. После того как с того диска, с которого загружается операцион¬ ная система (т.е. с дискеты или винчестера), прочитана программа-за¬ грузчик операционной системы, эта программа считывает в память компьютера модули операционной системы IO.SYS и MSDOS.SYS и передает им управление. Далее с диска, с которого загружается операционная система, чи¬ тается файл конфигурации системы CONFIG.SYS, загружаются драй¬ веры устройств и устанавливаются параметры операционной системы
28 Глава 2 в соответствии с указаниями, содержащимися в файле CONFIG.SYS. Если файл CONFIG.SYS отсутствует, все параметры устанавливаются по умолчанию. После этого с диска, с которого загружается операционная систе¬ ма, читается командный процессор (файл COMMAND.COM) и ему пе¬ редается управление. Командный процессор выполняет командный файл AUTOEXEC.BAT, если этот файл имеется в корневом каталоге диска, с которого загружается операционная система. В файле AUTOEXEC.BAT указывают команды и программы, выполняемые при каждом запуске компьютера. Например, там можно указать за¬ пуск программы, обеспечивающей работу с русскими буквами на кла¬ виатуре. Если файл AUTOEXEC.BAT не найден в корневом каталоге диска, с которого загружается операционная система, то MS DOS запраши¬ вает у пользователя текущую дату и время. После выполнения файла AUTOEXEC.BAT процесс загрузки опе¬ рационной системы заканчивается. MS DOS выдает приглашение, по¬ казывающее, что она готова к приему команд. GENOA SUPER EGABIOS , Version 3.00 (C) Copyright GENOA Systems Corp. 1986,1987 Phoenix 80286 ROM BIOS Version 3.00 Copyright (c) 1985,1986 Phoenix Technologies Ltd All Rights Reserved 00640K Base Memory, 00384K Expansion Installing MOUSE Device Driver V5.03 Hard Disk (D) Device Driver Installed. Alias List: Keyboard driver installed. EGA 8x14 font loaded. AntiVirus installed. To activate menu, press Alt-4. 20:18 C:\> Рис. 2.1. Пример сообщений при начальной загрузке MS DOS На рис. 2.1 показан пример сообщений, которые выдаются при начальной загрузке MS DOS. Эти сообщения зависят от модели ком¬ пьютера, версии операционной системы и содержимого файлов CONFIG.SYS и AUTOEXEC.BAT, поэтому на вашем компьютере сооб¬ щения, выдаваемые при загрузке, могут быть совсем другими. / Резидентные программы Этот пункт можно при первом чтении опустить. Как правило, после окончания работы программы вся занимаемая ею оперативная память освобождается и делается доступной для сле¬ дующих запускаемых пользователем программ. Однако в операцион¬ ной системе MS DOS для программ имеется возможность не освобож¬ дать (полностью или частично) по окончании своей работы занимае¬
Начальные сведения о MS DOS 29 мую ими оперативную память. Такие программы называются рези¬ дентными, или постоянно находящимися в памяти. При запуске резидентной программы она выполняет какие-то дей¬ ствия, после чего оканчивает свою работу. На экране появляется при¬ глашение MS DOS, и пользователь может запускать другие програм¬ мы. Однако часть оперативной памяти компьютера остается занятой резидентной программой. Иногда пользователь может повторно выдавать команду запуска резидентной программы для установки каких-то режимов ее работы. При этом программа, как правило, устанавливает, что она уже явля¬ ется резидентной и не отбирает больше оперативной памяти у MS DOS. Наличие резидентных программ имеет смысл потому, что при первом запуске они указывают операционной системе MS DOS, что она для выполнения некоторых своих услуг должна вызывать некото¬ рые заложенные в этих программах подпрограммы. Данные подпрог¬ раммы и располагаются в той части оперативной памяти, которая не освобождается при первом запуске резидентной программы. Например, резидентная программа может установить собственную подпрограмму для обработки ситуаций нажатия пользователем клавиш на клавиатуре. Такая подпрограмма может проверять, не на¬ жата ли пользователем определенная комбинация клавиш, и если она нажата, то вызывать некоторую программу, а если нет — передавать управление стандартной подпрограмме MS DOS для обработки нажа¬ тия клавиш. Так работают многие известные резидентные програм¬ мы, например SideKick, Norton Guides и др. Несколько более сложно обрабатывают нажатие клавиш драйверы клавиатуры, предназначен¬ ные для ввода русских букв с клавиатуры, а также программы, рас¬ ширяющие возможности клавиатуры, например SuperKey, SmartKey и др. Резидентные программы могут использоваться и для некоторых других функций, например для выполнения каких-то особых дейст¬ вий по управлению устройствами компьютера, разграничению досту¬ па к файлам на компьютере, защите от компьютерного вируса и т.д. Резидентные программы должны занимать небольшой объем опера¬ тивной памяти и весьма нетривиальным образом взаимодействовать с операционной системой MS DOS, поэтому они пишутся достаточно квалифицированными программистами, как правило, на языках Ас¬ семблер и Си.
Часть 2 ФАЙЛОВАЯ СИСТЕМА MS DOS И ОСНОВНЫЕ КОМАНДЫ Глава 3 ФАЙЛЫ И КАТАЛОГИ НА ДИСКАХ Что такое файл Информация на магнитных дисках хранится в файлах. Файл — это поименованная область на диске. В файлах могут храниться тексты программ, документы, готовые к выполнению программы и т.д. Часто файлы разделяют на две категории - текстовые и двоич¬ ные. Текстовые файлы предназначены для чтения человеком. Они со¬ стоят из строк символов, причем каждая строка оканчивается двумя специальными символами ’’возврат каретки” (CR) и ’’новая строка” (LF). При редактировании и просмотре текстовых файлов эти специ¬ альные символы, как правило, не видны. В текстовых файлах хра¬ нятся тексты программ, командных файлов MS DOS и т.д. Файлы, не являющиеся текстовыми, называются двоичными. Текстовый файл, содержащий только символы с кодами до 127 (т.е. не содержащий русских букв и псевдографических символов), называется ASCII-файлом. Имена файлов Каждый файл имеет имя, которое состоит из двух частей: имени и расширения. В имени файла может быть от 1 до 8 символов. Рас¬ ширение имени файла начинается с точки, за которой следуют от 1 до 3 символов. Например command.com paper.chi autoexec.bat имя расширение
Файлы и каталоги на дисках 31 Символы в имени и расширении могут быть прописными и строчными латинскими буквами, цифрами и символами - _ $ # & @ ! % ( ) { } ’ ~ ‘ Расширение имени файла является необязательным. Оно, как пра¬ вило, описывает содержание файла, поэтому использование расшире¬ ния весьма удобно. Многие программы устанавливают расширение имени файла и по расширению Вы можете узнать, какая программа создала файл. Примеры, .сот , .ехе — готовые к выполнению программы; .bat — команд¬ ные (Batch) файлы; .chi - документы для редактора ChiWriter; .pas — программы на Паскале; .for — программы на Фортране; .с - программы на Си; .asm — про¬ граммы на Ассемблере; .bak — копия файла, делаемая перед его изменением. В имени и расширении имени файла прописные и строчные латин¬ ские буквы являются эквивалентными, так как MS DOS переводит все строчные буквы в соответствующие прописные буквы. Следует заметить, что многие программы используют расширение .ВАК для копий файла, делаемых перед его изменением. Наличие та¬ кой копии позволяет восстановить содержимое файла в случае его ошибочного изменения или удаления. После окончания работы с фай¬ лом, когда пользователь правильно внес все изменения в файл, он может уничтожить созданные файлы с расширением .ВАК . Запрещенные имена файлов Некоторые имена файлов являются запрещенными, так как MS DOS понимает их как имена устройств. Эти имена таковы: AUX — дополнительное устройство, присоединяемое к асинхронному коммуникационному порту; СОМ 1 — COM3 — устройства, присоединяемые к асинхронным коммуникационным портам 1—3; LPT1 — LPT3 — устройства, присоединяемые к последовательным портам 1—3 (обычно это принтеры); CON — при вводе - клавиатура, при выводе — экран; PRN — принтер; NUL — „пустое” устройство; все операции ввода-вывода для этого устройства игнорируются. Даже если добавить к этим именам какое-либо расширение, все равно MS DOS будет воспринимать это как обращение к устройству. Например, обращение к файлу CON.АВС эквивалентно обращению к консоли, т.е. к CON, и поэтому CON.АВС не может быть использова¬ но как имя дискового файла. Однако расширения имени файлов .CON, .AUX, .PRN и .NUL вполне допустимы. Каталоги Имена файлов регистрируются на магнитных дисках в каталогах (или директориях). Каталог — это специальное место на диске, в ко-
32 Глава 3 тором хранятся имена файлов, сведения о размере файлов, времени их последнего обновления, атрибуты (свойства) файлов и т.д. Если в каталоге хранится имя файла, то говорят, что этот файл находится в данном каталоге. На каждом магнитном диске может быть несколько каталогов. В каждом каталоге может быть много файлов, но каждый файл всегда регистрируется только в одном каталоге. Все каталоги (кроме корневого, см. ниже) на самом деле являют¬ ся файлами специального вида. Каждый каталог имеет имя, и он мо¬ жет быть зарегистрирован в другом каталоге. Если каталог X зареги¬ стрирован в каталоге У, то говорят, что X — подкаталог Y, а У - над¬ каталог или родительский каталог для X. Требования к именам каталогов те же, что к именам файлов. Как правило, расширение имени для каталогов не используется. На каждом магнитном диске имеется один главный или корневой каталог. В нем регистрируются файлы и подкаталоги (каталоги 1-го уровня). В каталогах 1-го уровня регистрируются файлы и каталоги 2-го уровня и т.д. Получается иерархическая древообразная структу- ра каталогов на магнитном диске. каталог manual.chi — CHI manual.bak backup.chi каталог каталог LETTERS - telex.doc — DO С paper.doc Корневой paper.bak каталог — каталог каталог CHI - cw.exe — EXE pctools.exe pctools.hlp — autoexec.bat — command. . com — paper.doc каталоги каталоги 1-го уровня 2-го уровня Рис. 3.1. Пример файловой системы на магнитном диске На рис. 3.1 в корневом каталоге имеются подкаталоги CHI, DOC и EXE, а также файлы autoexec.bat, command.com и paper.doc. В ка¬ талоге DOC имеется подкаталог LETTERS, файлы paper.doc и paper.bak и т.д. Текущий каталог Каталог, с которым в настоящий момент работает пользователь, называется текущим. Если в* команде MS DOS указать имя файла, то этот файл будет искаться или создаваться в текущем каталоге. Например, команда type выводит содержимое файла на экран. Тогда команда type autoexec.bat будет искать файл autoexec.bat в те¬ кущем каталоге. Для вывода оглавления текущего каталога ввести команду dir. Чтобы сменить текущий каталог, имеется команда cd.
Файлы и каталоги на дисках 33 Указание пути к файлу Когда Вы используете файл не из текущего каталога, необходимо указать, в каком каталоге этот файл находится. Это делается с по¬ мощью указания пути к файлу. Путь — это последовательность из имен каталогов или символов , разделенных символом ”\”« Этот путь задает маршрут от теку¬ щего каталога или от корневого каталога диска к тому каталогу, я котором находится нужный файл. Если путь начинается с символа ”\”, то маршрут вычисляется от корневого каталога диска, иначе — от текущего каталога. Каждое имя каталога в пути соответствует входу в подкаталог с таким име¬ нем, соответствует входу в надкаталог. Например, пусть текущий каталог — DOC (см. рис. 3.1). Тогда: путь от корневого каталога Г г путь от текущего каталога \СН1 \DOC\LETTERS \EXE\CHI .. \СН1 - путь к каталогу 1-го уровня CHI LETTERS - путь к подкаталогу LETTERS каталога DOC .. \EXE\CHI - путь к подкаталогу CHI каталога EXE Имена накопителей надисках (дисководов) В компьютере обычно имеется несколько накопителей на магт ит ных дисках (дисководов). Для MS DOS накопители на магнитных дис ках именуются А:, В:, С: и т.д. Например, в компьютере может быть два накопителя на гибком магнитном диске А: и В: и один накопи тель на жестком магнитном диске (винчестер) С:. Текущий дисковод Текущий дисковод — это тот дисковод, с которым Вы работаем • настоящее время. MS DOS по умолчанию ищет все задаваемые поль¬ зователем файлы на диске, находящемся на текущем дисководе. Bi л можете сменить текущий дисковод с помощью команд MS DOS. Полное имя файла Полное имя файла имеет следующий вид: [дисковод :][путь\]имя-файла т.е. состоит из пути к каталогу, в котором находится файл, и имели файла, разделенных символом ”\”, перед которыми может стоять обозначение дисковода. Если дисковод не указан, то подразумевается текущий дисковод Если путь не указан, то подразумевается текущий каталог. Полное имя файла полностью специфицирует, с каким файлом Вы хотите работать. Например, пусть на рис. 3.1 изображена файловая система на диске накопите¬ ля А: . Текущий каталог на этом накопителе — A:\DOC. Тогда 2 Фигурнов В. Э.
34 Глава 3 a:paper.doc a:\paper.doc post\telex.doc - файл paper.doc в текущем каталоге диска на дисководе А: ; - файл paper.doc в корневом каталоге диска на дисководе А: ; - файл telex.doc в подкаталоге POST текущего каталога. Глава 4 ОСНОВНЫЕ КОМАНДЫ MS DOS Приглашение MS DOS Приглашение MS DOS выдается тогда, когда операционная систе¬ ма готова к вводу команд пользователя. Когда пользователь проводит диалог с какой-либо программой, а не с MS DOS, тогда приглашение MS DOS отсутствует. Приглашение MS DOS, как правило, содержит информацию о те¬ кущем дисководе и о текущем каталоге. Например, А:\> - дисковод А:, корневой каталог. С:\ЕХЕ> - дисковод С:, каталог \ЕХЕ. Иногда приглашение MS DOS включает также и информацию о текущем времени суток, например 12:59 C:\EXE\SYS> Ввод команд Для ввода команды следует набрать эту команду на клавиатуре и нажать [Enter]. При вводе команд можно пользоваться следующими клавишами для редактирования вводимой команды: [Del] - удаление текущего символа; [Backspace] — (стрелка налево над клавишей [Enter]) — стирание предыдущего символа; [Ins] — включение-выключение режима вставки; [-►], [*■] — (стрелки направо и налево на функциональной части клавиатуры) — перемещение курсора; [t] — (стрелка вверх на функциональной части клавиатуры) - вы¬ водит в командную строку предыдущую команду (для этого необхо¬ димо предварительно запустить программу Dosedit, см. гл. ’’Конфигурирование системы”); [Esc] — удаляет весь текст из командной строки. Вы можете прекратить выполнение любой команды MS DOS, на¬ жав комбинацию' клавиш [Ctrl—С] или [Ctrl—Break] (как указывалось в части 1, нажать [Ctrl—С] означает нажать клавишу [Ctrl] и, не отпу¬ ская ее, нажать на клавишу ”С”). Заметим, что прикладные программы не обязаны (хотя и могут) реагировать на нажатие [Ctrl—С] или [Ctrl—Break]. Если команда MS DOS выдает слишком много информации на эк¬ ран, можно воспользоваться комбинацией клавиш [Ctrl—S] для при¬ остановки выдачи. Повторное нажатие [Ctrl—S] возобновит выдачу.
Основные команды MS DOS 35 Если при выполнении команды MS DOS на экране появляется со¬ общение Strike any key when ready (Нажмите любую клавишу, когда будете готовы) или Strike any key to continue (Для продолжения нажмите любую клавишу) то для продолжения работы следует нажать любую буквенно-цифро¬ вую клавишу, пробел или [Enter]. Формат команд MS DOS Команда MS DOS состоит из имени команды и, возможно, пара¬ метров, разделенных пробелами. Имя команды MS DOS и параметры могут набираться как прописными, так и строчными латинскими бук¬ вами. В дальнейшем мы будем отмечать квадратными скобками необяза¬ тельные элементы команд. Имена команд Любая команда, вводимая пользователем, указывает на необходи¬ мость выполнения либо внутренней, либо внешней команды MS DOS, либо других программ или командных файлов. Для выполнения внутренней или внешней команды MS DOS необ¬ ходимо ввести имя этой команды и ее параметры. Для выполнения программ или командных файлов (т.е. файлов с расширениями имени .COM, .EXE и .ВАТ), находящихся в текущем каталоге или в одном из каталогов, указанных в команде MS DOS Path, необходимо ввести имя соответствующего файла и параметры. Расширение имени файла (т.е. .COM, .EXE и .ВАТ) можно не указы¬ вать. Для выполнения программ или командных файлов, не находя¬ щихся в текущем каталоге или в одном из каталогов, указанных в команде MS DOS Path, необходимо в качестве имени команды ис¬ пользовать полное имя файла, включающее путь к тому каталогу, в котором находится нужная программа или командный файл. Расши¬ рение имени файла (т.е. .COM, .EXE и .ВАТ) можно не указывать. Например, пусть текущий каталог — C:\DOC\WORK, а надо выполнить про¬ грамму HYPHEN, находящуюся в каталоге C:\DOC\PROG, и указать параметры программы PAPER.DOC /Р. Тогда для выполнения этой программы необходимо выполнить команду: c:\doc\prog\hyphen paper.doc /р или ..\prog\hyphen paper.doc /р э*
36 Глава 4 Символы * и ? Во многих командах MS DOS в именах файлов можно употреб¬ лять символы * и ? для указания группы файлов из одного каталога. Символ * обозначает любое число любых символов в имени файла или в расширении имени файла. Символ ? обозначает один произвольный символ или отсутствие символа в имени файла или в расширении имени файла. Примеры *.bak - все файлы с расширением .bak из текущего каталога; c*.d* - все файлы с именем, начинающимся с С , и расширением, начинаю¬ щимся с D , из текущего каталога; a:\doc\ABC???.* — все файлы с именем, начинающимся с АВС и состоящим не более чем из 6 символов, из каталога \doc на диске на дисководе А:. Команда смены текущего дисковода Для смены текущего дисковода надо набрать имя дисковода, ко¬ торый должен стать текущим, и затем двоеточие, например А: - переход на дисковод А: В: - переход на дисковод В: С: - переход на дисковод С: Напоминаем, что после ввода команды надо нажать клавишу [Enter]. Не следует делать текущим дисковод на дискетах, если на диско¬ воде нет дискеты, или дискета не читается, или не форматирована. Изменение текущего каталога Для изменения текущего каталога имеется команда cd (Change Directory). Формат команды: cd [дисковод :]путь Если задан дисковод, то текущий каталог изменяется на этом дис¬ ководе, иначе — на текущем дисководе. Примеры cd \ - переход в корневой каталог текущего диска; cd \exe\dos - переход в каталог \exe\dos. Вывод файла на экран Формат команды: type [дисковод:][путь\]имя-файла
Основные команды MS DOS 37 Примеры type paper.doc type a:\doc\t.doc - вывод на экран файла paper.doc из текущего катало¬ га; - вывод на экран файла t.doc из каталога a:\doc. Вывод на экран можно приостановить нажатием [Ctrl—S]. Повтор¬ ное нажатие [Ctrl—S] возобновляет вывод на экран (как указывалось ранее, нажать [Ctrl—S] означает нажать клавишу [Ctrl] и, не отпуская ее, нажать на клавишу ”S”). Закончить вывод на экран можно, нажав [Ctrl—С] или [Ctrl—Break]. Удаление файлов Для удаления файлов имеется команда del (delete). Формат ко¬ манды: del [дисковод:][путь\]имя-файла В имени файла можно употреблять символы * и ? Примеры del *.bak — удаление всех файлов с расширением .bak из текущего каталога; del paper.doc - удаление файла paper.doc из текущего каталога. Если Вы захотите удалить все файлы из каталога, например, коман¬ дой del *.* , то MS DOS спросит Вас: Are You sure (Y/N) ? (Вы уверены ? ) Для удаления файлов надо нажать ”Y” и [Enter], для отмены ко¬ манды — нажать ”N” и [Enter]. Просмотр каталога Для вывода оглавления каталога имеется команда dir. Формат ко¬ манды: dir [дисковод:][путь\][имя-файла] [/Р] [/W] В имени файла можно употреблять символы * и ?. Если имя фай¬ ла не задано, то выводится все оглавление каталога. Если имя зада¬ но, то выводятся только сведения о данном файле или группе фай¬ лов. Если не заданы дисковод или путь, то подразумеваются текущий дисковод и текущий каталог. Для каждого файла команда dir сообщает его имя, расширение имени, размер файла в байтах, дату и время создания или последнего обновления файла. Подкаталоги отмечаются <DIR>. В конце выдачи сообщается о размере свободного пространства на диске (рис. 4.1).
38 Глава 4 Volume in drive C is OMR_PC2_C Directory of C:\EXE\PKARC <DIR> <DIR> 1-16-89 1-16-89 4 : 38p 4 : 38p DOC <DIR> 8-05-89 8:28p NEW <DIR> 8-05-89 8:28p PKARC DOC 25638 1-16-89 4 :48p PKSFX DOC 1512 .1-16-89 4:51p PKSFX PGM 9758 3-03-89 4:44p PKXARC DOC 17647 1-16-89 4 : 51p README DOC 540 4-27-87 9 File(s) 1632256 bytes free Рис. 4.1. Информация, выводимая командой dir Параметр /Р задает поэкранный вывод оглавления. При указании этого параметра MS DOS после заполнения экрана будет ждать до тех пор, пока пользователь не нажмет любую клавишу, после чего будет выводить следующую страницу. Параметр /W задает вывод только информации об именах файлов в каталоге (рис. 4.2). Имена выводятся по пять в каждой строке. Volume in drive С is OMR_PC2_C Directory of C:\EXE\PKARC DOC NEW MAKESFX COM PKARC PKXARC COM PKARC DOC PKSFX DOC PKXARCJR COM README 13 File(s) 1632256 bytes DOC DOC free PKSFX PGM PKXARC COM Рис. 4.2. Информация, выводимая командой dir с параметрсьм /W Следует заметить, что формат выдачи информации о дате и време¬ ни может быть различным (он устанавливается предложением COUNTRY файла CONFIG.SYS). Если задан "европейский” формат да¬ ты и времени, то информация, выводимая командой dir, имеет вид, показанный на рис. 4.3. Volume in drive С is OMR_PC2_C Directory of C:\EXE\PKARC • <DIR> <DIR> 16.01.89 16.01.89 16.38 16.38 DOC <DIR> 5.08.89 20.28 NEW <DIR> 5.08.89 20.28 PKARC DOC 25638 16.01.89 16.48 PKSFX DOC 1512 16.01.89 16.51 PKSFX PGM 9758 3.03.89 16.44 PKXARC DOC 17647 16.01.89 16.51 README DOC 540 27.04.87 13 File(s) 1632256 bytes free Рис. 4.3. Информация, выводимая командой dir, если установлен ’’европейский” формат даты и времени
Основные команды MS DOS 39 Примеры dir — вывести оглавление текущего каталога; dir *.ехе — вывести сведения о всех файлах с расширением .ехе из теку¬ щего каталога; dir а:\ — вывести оглавление корневого каталога на дисководе а:. Создание каталога Для создания нового каталога имеется команда md (Make Directory). Формат команды: md [дисковод :]путь Примеры md ххх - создание подкаталога ххх в текущем каталоге; md a:\work — создание подкаталога work в корневом каталоге диска а: . Уничтожение каталога Для удаления (пустого) каталога имеется команда rd (Remove Directory). Формат команды: rd [дисковод:]путь Примеры rd ххх — удаление подкаталога ххх в текущем каталоге; rd a:\work — удаление подкаталога work в корневом каталоге диска а: . Отметим, что удалить можно только пустой каталог, т.е. каталог, не содержащий файлов и подкаталогов. Переименование файлов Для переименования файлов имеется команда ren (Rename). Фор¬ мат команды: геп [дисковод:][путь\]имя-файла имя-файла Первое имя файла в команде задает имя (имена) переименовывае¬ мых файлов, второе - новое имя (имена) файлов. Дисковод и путь задают, в каком каталоге переименовываются файлы. Если дисковод или путь опущены, то подразумеваются теку¬ щий дисковод и текущий каталог. В именах файлов можно употреблять символы * и ?. Переименовываются все файлы из заданного каталога, подходя¬ щие под шаблон, заданный в первом имени файла в команде. Если символы * и ? имеются во втором имени файла в команде, то симво¬ лы имен файлов на соответствующих позициях не изменяются. Примеры геп xxx.doc xxx.txt - переименование файла xxx.doc в текущем каталоге. Но¬ вое имя файла — xxx.txt ; ren a:*.doc *.txt — переименование всех файлов с расширением .doc в текущем каталоге на дисководе А: . Файлы получают расширение .txt .
40 Глава 4 Копирование файлов Для копирования файлов имеется команда сору. Формат коман¬ ды: сору [дисковод:][путь\]имя-файла [дисковод:][путь\]имя-файла или сору [дисковод:][путь\]имя-файла [дисковод:][путь] В именах файлов можно употреблять символы * и ?. Из каталога, указанного в первом параметре команды, копируют¬ ся файлы, заданные именем файла в первом параметре команды. Дис¬ ковод и путь во втором параметре команды указывают каталог, в ко¬ торый копируются файлы. Если во втором параметре имя файла от¬ сутствует, то имена файлов при копировании не меняются. Если во втором параметре команды задано имя файла, то оно указывает но¬ вое имя копируемого файла. Символы * и ? в имени файла во втором параметре команды указывают, что соответствующие символы в име¬ нах копируемых файлов при копировании не меняются. Примеры сору xxx.doc xxx.txt — копирование файла xxx.doc в текущем каталоге; созда¬ ется файл xxx.txt в текущем каталоге. сору а:\*.* — копирование всех файлов из корневого каталога накопителя а: в текущий каталог. copy \t\*.doc c:*.txt - копирование всех файлов с расширением .doc из катало¬ га \t текущего диска в текущий каталог накопителя с:. Файлы получают расши¬ рение .txt . В команде сору вместо имен файлов можно использовать обозна¬ чения устройств, например: CON — консоль (клавиатура для ввода, монитор для вывода). При вводе с клавиатуры конец файла задается как [Ctrl—Z] или [F6]); PRN— принтер (только как выходной файл). Пример сору paper.txt ргп — вывод файла paper.txt на принтер. Глава 5 НЕКОТОРЫЕ ПОЛЕЗНЫЕ ПРОГРАММЫ И КОМАНДЫ В настоящей главе рассказывается о некоторых полезных про- раммах и командах MS DOS. Эти команды и программы таковы: 1. cis 2. ncd 3. park — очистка экрана монитора; — наглядный переход в другой каталог; — подготовка компьютера к выключению питания;
41 Глава 5 4. qu 5. ff 6. dt — быстрое восстановление удаленного файла; — поиск файла; — проверка диска на наличие ’’сбойных” участков и перемещение информации из этих участков в безопасное место; 7. chkdsk — проверка файловой структуры на диске и на¬ 8. delbak хождение ’’потерянных” участков на диске; — удаление страховочных копий файлов (т.е. всех 9. sd 10. ds 11. format 12. label 13. si 14. vtsr файлов с расширением .bak ); — оптимизация (сжатие) диска; — сортировка оглавлений каталогов; — инициализация дискеты; — задание метки на дискете; — получение информации о компьютере; — получение информации о резидентных програм¬ мах. ъ Замечание, cis, format, label, chkdsk — команды MS DOS, они имеются на каждом компьютере. Ned, park, qu, ff, dt, sd, ds, si, vtsr — программы, кото¬ рых может и не быть на компьютере. CIs - очистка экрана монитора Формат команды: cis Ned - наглядный переход из каталога в каталог Формат команды: ned [/г] Команда ned1 выводит на экран дерево каталогов на текущем дис¬ ке (рис. 5.1). Клавишами перемещения курсора можно выделить тот каталог, в который Вы хотите перейти. Для перехода в этот каталог нажмите [Enter]. Для выхода из программы ned (без изменения теку¬ щего каталога) нажмите [Esc]. Режим /г приводит к считыванию информации о каталогах с дис¬ ка. Эта информация сохраняется в файле treeinfo.ned в корневом ка¬ талоге. Если режим /г не задан, то информация о каталогах ищется в файле treeinfo.ned. Полезно перед выдачей команды ned /г выдать из корневого каталога диска команду DS NE /S, так как при этом дере¬ во каталогов на экране будет упорядочено по алфавиту. С помощью программы ned можно также ♦ нажав [F7] ется); ♦ нажав [F8] быть пуст); ♦ нажав [F6] ♦ нажав [F2] ка; (MkDir), — создать подкаталог (его имя запрашива- (Delete), — удалить каталог (этот каталог должен (Rename), — переименовать каталог; (Rescan), — считать информацию о каталогах с дис¬ 1 1 Norton Change Directory, Advanced Edition 4.50, Copyright (C) Peter Norton, 1987-1988.
Некоторые полезные программы и команды 42 Norton Change Directory ============= \ “I ARC" PKZIP CHI rONlb ■■’DEMO TREND"' DOC DOC ADVERT1S —BUDGET —DOGOVOR —ECOLOGIA —ENGLISH —FRANCE —JOURNAL —КLIENT —LETTERS АтГЧИТ OTUEL 1 i* Blank LCONF C:\ Speed Search: Press ‘Enter for next match lHelp 2Rescan 3Drive 4 5 6Rename 7MkDir 8Delete 9Lines lOQuit Рис. 5.1. Дерево каталогов на диске, выводимое программой ncd ♦ нажав [F3] (Drive), — перейти к просмотру дерева каталогов на другом диске. Программа ncd выделяет на экране исходный каталог желтым цветом (на монохромном дисплее — повышенной яркостью), а теку¬ щий каталог — инверсным изображением. Пример: ncd park - подготовка компьютера к выключению питания Формат команды: park Программа park2 устанавливает головки чтения-записи на винче¬ стере в положение, при котором можно безопасно выключать элект¬ ропитание компьютера. qu - (quick unerase) - восстановление стертого файла Часто требуется восстановить случайно уничтоженный файл или старую версию файла. Это можно сделать, если место, которое зани¬ мал этот файл, еще не занято новыми файлами. Для восстановления файлов имеется программа qu3 . Формат команды: qu [дисковод :][путь\]имя-файл а 2 п См. главу ’’Конфигурирование системы”. qu - Quick UnErase, Advanced Edition 4.50, (C) Copr 1987-88, Peter Norton.
43 Глава 5 В имени файла можно употреблять символы * и ?. Программа qu будет предъявлять имена файлов, которые можно пытаться восстановить. Вместо первого символа имени может быть символ ”?”, так как при стирании файла в каталоге первый символ имени заменяется некоторым специальным символом. Если Вы хотите восстановить удаленный файл, то на вопрос Do you wish to quick-unerase this file (Y/N) ? (Хотите ли Вы восстановить этот файл ( (У — да, N — нет)) надо ответить ”У”, иначе — ”N”. После нажатия ”У” программа мо¬ жет спросить, какой первый символ имени должен быть у восстанав¬ ливаемого файла. Пример: qu paper.* З а м е ч а н и е. Во многих случаях файл, который не удается восстановить с помощью программы qu, можно восстановить с помощью программы пи4 *. ff - (Find File) - поиск файла на диске Формат команды: ff имя-файла В имени файла можно употреблять символы * и ?. Программа ff° сообщит о всех подходящих файлах на диске и о том, в каких каталогах они находятся. П р и м е р. ff digger.* — найти все файлы с именем digger и произвольным расширением. Замечание. На многих компьютерах вместо программы ff имеется ана¬ логичная программа where. dt - проверка диска на наличие ’’сбойных” участков Программа dt6 проверяет диск на наличие ’’сбойных” участков и перемещает информацию из этих участков в безопасное место. Формат команды: dt дисковод: /В /М Параметр /В задает полную проверку диска на наличие ’’сбойных” участков. Параметр /М задает режим перемещения ’’сбойных” участ¬ ков файлов в безопасное место на диске (если оно имеется). Программа dt во время работы выводит на экран сообщения о проверяемых участках диска (рис. 5.2). При обнаружении ’’сбойных” участков диска программа dt сооб¬ щит о них и затем спросит, нужно ли перенести содержащуюся в них информацию в безопасное место. Разумеется, информация со ’’сбой¬ ных” участков диска может быть восстановлена с некоторыми ошибками. nu - The Norton Utilities, Advanced Edition 4.50, (C) Copr 1987-88, Peter Norton. J? ff - File Find, Advanced Edition 4.50, (C) Copr 1987-88, Peter Norton. 0 dt - Disk Test, Advanced Edition 4.50, (C) Copr 1987-88, Peter Norton.
Некоторые полезные программы и команды 44 C:\>dt с. /В /М DT-Disk Test, Advanced Edition 4.50, (С) Сорг 1987-88, Peter Norton During the scan of the disk, you may press BREAK (Control-C) to interrupt Disk Test Test reading the entire disk C:, system area and data area The system area consists of boor, FAT, and directory No errors reading system area The data area consists of clusters numbered 2 - 16,327 No errors reading data area Test reading files Directory Directory Directory Directory C:\ C:\DOC C:\DOC\TELEX C:\DOC\RECLAMA С:\WORK Directory No errors reading files Рис. 5.2. Проверка диска с помощью программы dt Пример: dt а: /т /Ь chkdsk - проверка файловой структуры на диске и нахождение ’’потерянных” участков на диске Формат команды: chkdsk дисковод: /F Параметр /f задает режим коррекции обнаруженных ошибок. Пример: chkdsk с: /f Если программа chkdsk находит потерянные участки диска (т.е. участки, не принадлежащие ни одному из файлов и не числящиеся в списке свободных), то она выдает сообщение (рис. 5.3): х lost clusters found in у chains convert lost clusters to files (Y/N) ? (Найдено xx потерянных кластеров, содержащихся в уу цепочках, преобразовать эти цепочки в файлы ? (Y — да, N — нет)) Если ответить ”Y”, то программа chkdsk создает в корневом ката¬ логе файлы FILE0000.CHK, FILE0001.CHK и т.д. Их надо просмот¬ реть и, если они не содержат ценной информации, уничтожить. Если ответить ”N”, то потерянные участки сразу будут добавлены к списку свободных участков на диске. Если программа chkdsk сообщает о каких-либо ошибках на винче¬ стере, следует посмотреть описание chkdsk в части 5 настоящей кни¬ ги. В случае серьезных ошибок надо немедленно сообщить об этом от¬ ветственному за компьютер или специалистам по техническому об¬ служиванию компьютеров.
45 Глава 5 12:59 С:\> chkdsk с: /f Volume OMR_PC2_D created 8 Feb 1989 19.58 10 lost clusters found in 5 chains. Convert lost chains to files (Y/N)? у 9216000 bytes total disk space 0 bytes in 1 hidden files 40960 bytes in 10 directories 2617344 bytes in 144 user files 40960 bytes in 5 recovered files 6516736 bytes available on disk 655360 bytes total memory 549600 bytes free Рис. 5.3. Проверка файловой структуры на диске программой chkdsk delbak - удаление страховочных копий файлов (т.е. файлов с расширением .bak) на винчестере Формат команды: delbak Эта команда (см. приложение 5) полезна, так как она освобождает место на винчестере, занятое старыми копиями файлов. sd - оптимизация размещения файлов на диске Формат команды; sd [дисковод:] /А /С или sd [дисковод:] /А /Q в XX Menu Optimize Disk Change Drive Set Options Disk Statistics Exit Speed Disc X Status Writing... Drive C: (Complete) 36% completed Press Esc to stop condensing Legend ■ - Used block j - Unused block X - Unmovable block В - Bad block block = 14 cluster Рис. 5.4. Сжатие диска программой sd
Некоторые полезные программы и команды 46 Пример: sd с: /А /С Программа sd7 перемещает все файлы на диске к началу диска и устраняет фрагментацию файлов (рис. 5.4). Это убыстряет работу с диском и уменьшает износ дисковода. Параметр /А команды задает работу программы sd без дополнительных запросов. Параметр /С задает режим полной оптимизации, параметр /Q — быстрой, но менее эффективной оптимизации размещения файлов на диске. • ds - сортировка каталогов Формат команды: ds ne [/s] Команда ds8 сортирует текущий каталог. Режим пе означает сор¬ тировку по имени файла и расширению. Параметр /s задает сортиров¬ ку также и всех подкаталогов. После сортировки команда dir выдаст оглавление каталога, упо¬ рядоченное по алфавиту. После выполнения команды ds ne /s из кор¬ невого каталога диска программы ncd, pctools и другие будут выво¬ дить на экран дерево каталогов, упорядоченное по алфавиту. Пример: ds ne /s format - инициализация дискет Формат команды: format дисковод: Пример: format а: Программа format инициализирует дискеты. Если на дискете бы¬ ла записана какая-либо информация, то она будет уничтожена. На дисководе для дискет емкостью 360 Кбайт дискеты можно формати¬ ровать на емкость 360 Кбайт или менее, на дисководе для дискет ем¬ костью 1,2 Мбайта дискеты можно форматировать на емкость 1,2 Мбайта или менее. В команде имеются параметры для форматирова¬ ния дискет не на максимальную емкость, они приведены в описании команды в части 5. При вводе команды без этих параметров дискета форматируется на емкость, соответствующую максимальной ехмкости дисковода. На дисководах емкостью 360 Кбайт следует инициализировать ди¬ скеты с простой и двойной плотностью записи (Single Density и Double Density, т.е. дискеты емкостью 360 Кбайт и менее), на диско¬ водах емкостью 1,2 Мбайта — дискеты с высокой плотностью записи (High Density, т.е. емкостью 1,2 Мбайта). После ввода команды появляется сообщение Insert new diskette to drive x: and strike ENTER when ready (Вставьте дискету и нажмите [Enter]) 7 sd - Speed Disk, Advanced Edition 4.50, (C) Copr 1987-88, Peter Norton. a ds - Directory Sort, Advanced Edition 4.50, (C) Copr 1987-88, Peter Norton.
47 Глава 5 Если дискета испорчена, то появится сообщение Track 0 bad — disk unusable (Дорожка 0 испорчена, дискету использовать нельзя) Это сообщение может появиться также при попытке инициализи¬ ровать дискету с высокой плотностью записи (т;е. емкостью 1,2 Мбайта) на дисководе для дискет емкостью 360 Кбайт. Следует заметить, что иногда дискету, при инициализации кото¬ рой появляется сообщение "Track 0 bad — disk unusable”, все же уда¬ ется инициализировать программой pctools. После окончания инициализации дискеты появляется запрос Format another (Y/N)? (Форматировать еще ? [Y — да, N — нет]) Если не надо инициализировать еще дискеты, то надо ответить ”N”. Не следует пытаться инициализировать жесткий диск (винче¬ стер), так как при этом все данные на винчестере будут уничтожены. label - задание метки на дискете Формат команды: label дисковод: Пример: label а: Программа label сообщит о существующей метке диска и запросит новую метку. Если Вы не хотите изменять метку диска, нажмите [Enter]. Метка диска может быть до 11 символов длиной. si - получение информации о компьютере Формат команды: si [дисковод:] Программа si9 выводит на экран (рис. 5.5) информацию о модели компьютера, типе процессора и наличии математического сопроцессо¬ ра, версии DOS, о серийных и последовательных портах для подклю¬ чения дополнительного оборудования, о типе адаптера монитора, об использовании оперативной памяти. Кроме того, программа si вычис¬ ляет индекс производительности процессора по отношению к стандар¬ тной модели IBM PC XT и, если в команде задан дисковод с жестким диском, проверяет быстродействие жесткого диска. si - System Information, Advanced Edition 4.50, (C) Copr 1987-88, Peter Norton.
i 1икоторые полезнее программы и команды 48 Computer Name: IBM/PC-AT Operating System: DOS 3.30 Built-in BIOS dated: Monday, September 1, 1986 Main Processor: Intel 80286 Serial Ports: 2 Co-Processor: Intel 80287 Parallel Ports: 1 Video Display Adapter: Enhanced Graphics, 256 K-bytes Current Video Mode: Text, 80 x 25 Color Available Disk Drives: 4, A: - D: DOS reports 640 K-bytes of memory: 103 K-bytes used by DOS and resident programs 537 K-bytes available for application programs A search for active memory finds: 640 K-bytes main memory (at hex 00000-0A000) 32 K-bytes display memory (at hex 0B800-0C000) 384 K-bytes extended memory (at hex 10000-16000) ROM-BIOS Extensions are found at hex paragraphs: C000 Computing Index (CI), relative to IBM/XT: 11.7 Disk Index (DI), relative to IBM/XT: 2.7 Performance Index (PI), relative to IBM/XT: 8.7 Рис. 5.5. Информация о компьютере, выводимая программой si vtsr - получение информации о резидентных программах Формат команды: vtsr Команда vtsr10 выводит список всех резидентных (постоянно на¬ ходящихся в памяти) программ и сведения об объеме занимаемой ими памяти (рис. 5.6). Эта информация бывает полезна для установ¬ ления причины, почему для запуска той или иной программы не хва¬ тает оперативной памяти. Vtsr Version 1.01 TSR Info Copyright (C) Golden Bow Systems 1987 SizeKb Name Uses/Comments 2.2 DOSEDIT Ints(21) 6.5 RK Ints(10) 16.8 LF1510 Ints(05,08,09,13,16,25,26,28,3F) Рис. 5.6. Информация о резидентных программах, выводимая программой vtsr 10 Vtsr Version 1.01 TSR Info Copyright (C) Golden Bow Systems 1987
Работа с Norton Commander 49 Глава 6 РАБОТА С ПРОГРАММОЙ NORTON COMMANDER Взаимодействие пользователя с операционной системой MS DOS построено, как это объяснялось ранее, по принципу диалога: пользо¬ ватель набирает на клавиатуре нужную команду и нажимает клавишу [Enter], после чего MS DOS выполняет введенную команду. Такой способ взаимодействия не нагляден и недостаточно удобен, поэтому в настоящее время широкое распространение получили программы-обо¬ лочки, которые позволяют в полноэкранном режиме выполнять наи¬ более часто используемые операции при работе с MS DOS: просматри¬ вать содержимое каталогов на дисках, переходить из одного каталога в другой, копировать, перемещать и удалять файлы, запускать про¬ граммы и т.д. Примерами таких программ-оболочек являются QDos, Norton Commander, PathMinder, XTree и др. В операционную систему MS DOS версии 4.0 также включена собственная программа-оболоч¬ ка. В настоящей главе рассматривается одна из наиболее удачных программ-оболочек — программа Norton Commander1. Она дает воз¬ можность пользователю взаимодействовать с MS DOS как посредст¬ вом ввода команд, так и с помощью удобного полноэкранного интер¬ фейса, использующего клавиши перемещения курсора, функциональ¬ ные клавиши и ’’мышь”. Для работы программы Norton Commander требуется 101 Кбайт на диске и 150 Кбайт оперативной памяти. При запуске прикладных программ в процессе работы с Norton Commander количество опера¬ тивной памяти, доступное этим прикладным программам, уменьшает¬ ся на 12,3 Кбайт, что вполне допустимо. Запуск программы Norton Commander Запуск Norton Commander осуществляется набором в командной строке NC . Можно запустить версию Norton Commander, требующую меньше оперативной памяти, но работающую несколько медленнее. Это делается командой NCSMALL. (Как правило, файл NCSMALL.EXE переименовывают в NCS.EXE, и тогда команда вызова будет NCS.) Выход из Norton Commander Для выхода из Norton Commander надо нажать клавишу [F10J. В центре экрана появится запрос на подтверждение того, что Вы хотите выйти из Norton Commander. Чтобы выйти, нажмите [Enter] или ”У”. Чтобы отменить выход, нажмите [Esc] или ”N”. 1 The Norton Commander, Version 2.01, Copyright (C) 1988 by Peter Norton.
50 Глава б Общий вид экрана После запуска Norton Commander в верхней части экрана появля¬ ются два прямоугольных окна, ограниченные двойной рамкой (далее эти окна будут называться панелями). Ниже этих панелей располага¬ ется обычное приглашение DOS. Там можно вводить обычные коман¬ ды DOS. Еще ниже располагается строка, напоминающая значения функциональных клавиш Norton Commander (рис. 6.1). = ?:\EXE\PKARC =й f==^= Info ===— 23.01 Name Size Date Time Norton Commander Version 2.00 | UP—DIR 16.01.89 16.38 Copyright (C) 1988, Peter Norton DOC SUB-DIR 5.08.89 20.28 NEW SUB-DIR 5.08.89 20.28 655.360 Bytes Memory makesfx com 1358 27.04.87 0.00 532.320 Bytes Free pkarc com 19573 27.04.87 0.00 33.435.648 bytes on drive C: pkarc doc 25638 16.01.89 16.48 1.632.256 bytes free on drive C: pksfx doc 1512 16.01.89 16.51 12 files use 106.496 bytes in [ pksfx pgm 9758 3.03.89 16.44 C:\EXE\PKARC pkxarc com 12242 27.04.87 0.00 pkxarc doc 17647 16.01.89 16.51 pkxarcj com 12110 27.04.87 0.00 No 'dirinfo' file readme doc 540 27.04.87 0.00 in this directory 56.481 bytes in 4 selected files C:\EXE\PKARO lHelp 2User 3View 4Edit 5Copy 6RenMov 7Mkdir SDelete 9Menu lOQuit Рис. 6.1. Вид экрана при работе с программой Norton Commander Общий вид панелей Norton Commander В каждой панели Norton Commander может содержаться: ♦ оглавление каталога на диске (см. рис. 6.1, левая панель); ♦ дерево каталогов на диске (рис. 6.2); ♦ сводная информация о диске и каталоге на другой панели (см. рис. 6.1, правая панель). Если в панели содержится оглавление каталога, то наверху пане¬ ли выводится имя этого каталога. Если в панели содержится дерево каталогов на диске, сверху выводится ’’Tree”. Если в панели содер¬ жится сводная информация о диске и каталоге, сверху панели выво¬ дится ’’Info”. Имена файлов в оглавлении каталога выводятся строчными бук¬ вами, а подкаталоги — прописными буквами. Справа от имени подка¬ талога изображается <SUB—DIR>. Самую верхнюю строку в оглавлении занимает ссылка на роди¬ тельский каталог (разумеется, для корневого каталога диска эта стро¬ ка отсутствует). В поле имени для родительского каталога изобража¬ ется справа изображается <UP—DIR>.
Работа с Norton Commander 51 NUM_TOOL COMMON DEMO DEMOSRC DIFFER 1 DEMO EIGEN 1 DEMO FFT 1 DEMO INITVAL C:\TP Рис. 6.2. Дерево каталогов на диске в панели Norton Commander Выделенный файл или каталог Один из файлов или каталогов на экране выделен серым цветом (на монохромном дисплее — инверсным изображением). Будем назы¬ вать такой файл или каталог выделенным. Клавишами перемещения курсора [t], [1], [PgUp], [PgDn] можно перемещать выделенный участок на экране, выделяя другой файл или каталог. Клавишей [Tab] можно перевести выделенный участок на другую панель Norton Commander. Если выделить какой-либо подкаталог и нажать [Enter], то Norton Commander ’’войдет” в этот подкаталог и выведет его оглавление. Чтобы перейти в родительский каталог, надо выделить его (она изображается .. <UP-DIR> ) и нажать [Enter]. Если выделить какой- либо файл и нажать [Enter], то действие Norton Commander зависит от расширения имени этого файла, например .COM, .EXE, .ВАТ - начнется выполнение этого файла; .CHI — будет вызван ChiWriter для редактирования этого файла; .DOC - будет вызван Microsoft Word для редактирования этого файла; .PAS - будет вызван Turbo-Pascal; .С — будет вызван Turbo-C; .ZIP - будет выдано оглавление архива. Действие, выполняемое для файла с данным расширением при на¬ жатии клавиши [Enter], задается файлом NC.EXT. Этот файл может редактироваться с помощью Norton Commander (см. ниже). При от¬ сутствии файла NC.EXT и для расширений, не упомянутых в файле NC.EXT, никаких действий выполнено не будет.
52 Глава 6 Использование функциональных клавиш В нижней строке экрана Norton Commander выводит напоминание о значении функциональных клавиш. Ниже кратко описывается их назначение. [Fl] - Help — краткая информация о назначении клавиш при ра¬ боте с Norton Commander ; [F2] - User - запуск команд, указанных в списке, заданном поль¬ зователем (пользовательском меню, см. ниже); [F3] — View - просмотр файла. Можно просматривать • как текстовые файлы, так и файлы DBase и Lotus 1—2—3; [F4] - Edit - редактирование файла; [F5] - Сору - копирование файла. В середине экрана появляется запрос о том, куда копировать файл. По умолчанию файл копируется в каталог, изображенный на другой панели. Можно набрать и другое имя каталога. Затем для копирования надо нажать [Enter], для отме¬ ны команды - [Esc]; [F6] - Renmov - переименование файла (каталога) или пересылка файла в другой каталог. Можно задать новое имя файла (каталога) или имя каталога, в который надо переслать данный файл. Для нача¬ ла переименования или пересылки надо нажать [Enter], для отмены команды - [Esc]; [F7] - MkDir - создание подкаталога; [F8] - Delete - уничтожение файла или подкаталога; [F9] — Menu — выводится меню, содержащее режимы работы Norton Commander (см. ниже); [ F10] — Quit — выход из Norton Commander. Выбор группы файлов Norton Commander позволяет выбрать группу файлов, с которой можно выполнить некоторые действия: скопировать, переместить в другой каталог, удалить и т.д. Выбор отдельного файла (т.е. помещение этого файла в группу) осуществляется нажатием клавиши [Ins]. Повторное нажатие клави¬ ши [Ins] отменяет выбор файла. Чтобы выбрать группу файлов по маске, нажмите [+] (плюс на функциональной клавиатуре) и задайте маску для выбора. В маске можно использовать символы * и ?, их смысл — тот же, что в коман¬ дах MS DOS. Чтобы отменить выбор группы файлов по маске, нажмите [—] (ми¬ нус на функциональной клавиатуре) и задайте маску файлов, выбор которых Вы хотите отменить. Выбранные файлы изображаются желтым цветом на цветном дис¬ плее и повышенной яркостью на монохромном дисплее. В низу пане¬ ли появляются сведения об общем числе выделенных файлов и общем их размере. С помощью функциональных клавиш можно выполнить следую¬ щие действия с выбранной группой файлов:
Работа с Norton Commander 53 [F5] - Сору [F6] - RenMov — скопировать в другой каталог; — переместить в другой каталог или переиме¬ новать; [F8] - Delete — уничтожить. Быстрый переход в другой каталог Для того чтобы перейти в другой каталог на том же диске, можно нажать комбинацию клавиш [Alt—ЕЮ]. После этого на экране изобра¬ жается дерево каталогов на диске (рис. 6.3). Клавишами перемеще¬ ния курсора следует выделить нужный каталог и нажать [Enter]. Можно также набрать первые буквы имени того каталога, в кото¬ рый надо перейти. Norton Commander постарается сам выделить нуж¬ ный каталог. Если Norton Commander выделил не тот каталог, кото¬ рый Вам нужен, а какой-то другой каталог, имя которого начинается с указанных Вами букв, то следует нажать [Ctrl—Enter], чтобы Norton Commander выделил следующий подходящий каталог. L— DOC —fox —HELP —STORY - RECLAMA —SYS —TT —VTEST *— DOC_EDIT ■j—CATAL *—STATIST— t-PICTURE L-VISITKI L-ECOLOGIA -r—WORK LDOC v C:\RECLAMA Speed search: Press ‘Enter for next match. Рис. 6.3. Быстрый переход в другой каталог Переход на другой диск Для того чтобы в панели Norton Commander вывести оглавление другого диска, следует нажать [Alt-Fl] — для левой панели, [Alt—F2] — для правой панели. Затем надо выбрать (клавишами [-*], [♦-]) имя нужного диска и на¬ жать [Enter]. Если на панели Norton Commander изображается оглавление ката¬ лога на дискете, а Вы заменили дискету, то для того, чтобы прочесть
54 Глава 6 оглавление новой дискеты, надо нажать [Alt—Fl] или [Alt—F2] и [Enter]. Запуск программ и команд DOS Если требуется выполнить ту или иную программу или команду DOS, необходимо только, как обычно, набрать эту команду и нажать [Enter]. После окончания выполнения вид экрана будет тот же, что и до него. Если требуется посмотреть на выведенные на экран результаты выполнения команды (они могут быть закрыты панелями Norton Commander), нажмите [Ctrl—О]. Повторное нажатие [Ctrl—О] восстано¬ вит панели на экране. Чтобы вывести в командную строку предыдущую выполненную команду, нажмите [Ctrl—Е]. При повторных нажатиях [Ctrl—Е] в ко¬ мандную строку будет выводиться команда, которая была введена пе¬ ред той, которая находится в командной строке. При нажатии [Ctrl—X] в командную строку выводится команда, которая была вве¬ дена после той, которая находится в командной строке. После того как в командную строку была выведена подходящая команда, ее можно отредактировать и затем нажать клавишу [Enter] для выпол;- нения. Если требуется выполнить одну из предыдущих введенных ко¬ манд без всяких изменений, то можно нажать [Alt—F8], выделить с помощью клавиш перемещения курсора [t], [l] нужную команду и затем нажать клавишу [Enter] для ее выполнения. Чтобы вывести в командную строку на место курсора имя высве¬ ченного на панелях Norton Commander файла, нажмите [Ctrl—Enter]. При этом курсор должен указывать на пробел. Для того чтобы очистить командную строку, нажмите [Esc]. Быстрый поиск файла Чтобы быстро выделить файл в текущем каталоге, следует нажать клавишу [Alt] и, не отпуская ее, первые буквы имени нужного фай¬ ла. Norton Commander выделит нужный файл, как только Вы введете достаточное количество букв имени файла. Для быстрого поиска файла во всех каталогах на диске (рис. 6.4) следует нажать [Alt—F7] и набрать имя файла, который Вы хотите найти. В имени файла можно использовать символы * и ?. После на¬ жатия клавиши [Enter] начнется поиск. Поиск можно прекратить, выделив ’’Stop” и нажав [Enter]. Клавишами перемещения курсора [t] и [1] можно выделить нужный файл среди найденных, если найдено несколько файлов. Затем можно выделить в меню ’’ChDir” и нажать [Enter] для перехода в тот каталог, где находится нужный файл.
Работа с Norton Commander 55 Find File \TP\NUM_TOOL eigenval.tpu 26,320 12-30-87 4:00a EIGEN SUB-DIR 8-04-89 ll:41p \TP\NUM_TOOL\EIGEN eigenl.inc 33,701 12-30-87 4:00a eigen2.inc 45,344 12-30-87 4:00a eigenval.pas 18,650 12-30-87 ’ 4:00a Scanning: \KARAT\STATIST Chdir New search Stop Рис. 6.4. Быстрый поиск файла на диске Меню Norton Commander С помощью меню Norton Commander можно установить наиболее удобный вид представления информации на экране, изменить режи¬ мы работы Norton Commander, а также выполнить некоторые другие действия. Для входа в меню следует нажать клавишу [F9]. В верхней строке экрана появится строка, содержащая пункты меню ’’Left”, ’’Files”, ’’Commands”, ’’Options” и ’’Right”. Один из этих пунктов меню является выделенным, выбора нужного пункта меню следует использовать клавиши перемещения курсора [->] и [<-]. Выбрав нужный пункт меню, следует нажать клави¬ шу [Enter], и под ним откроется соответствующее ему подменю (рис. 6.5). Для выбора нужного пункта подменю следует использовать кла¬ виши [t] и [I]. Выбрав нужный пункт подменю, следует нажать кла¬ вишу [Enter]. Для выхода из меню и подменю Norton Commander следует ис¬ пользовать клавишу [Esc]. Приведем описание пунктов меню Norton Commander. ’’Left” и ’’Right” — режимы вывода информации соответственно в левой и правой панелях Norton Commander. Действующие режимы отмечены галочкой слева. Чтобы установить или отменить режим, надо выделить его клавишами перемещения курсора и нажать [Enter]. Подменю, соответствующие ’’Left” и ’’Right”, содержат следу¬ ющие пункты:
56 Глава 6 Left Files Commands Options Right Brief J Full Info Tree On/Off Ctrl-Fl J Name extension tiMe Size Unsorted Re-read Drive... Alt-Fl Рис. 6.5. Меню Norton Commander. Выделен пункт ’’Left” — режимы вывода информации на левую панель Brief — краткая информация о файлах (выводится только имя); Full — полная информация о файлах; Info — в панели изображается сводная информация о каталоге и диске на дру гой панели; Tree — в панели изображается дерево каталогов на диске; On/Off — выводить или не выводить на экран левую панель; Name — файлы выводятся в алфавитном порядке; ■extension — файлы выводятся так, что расширения имен файлов оказываются в алфавитном порядке; tiMe — файлы выводятся в порядке убывания даты последней модификации: более новые файлы выводятся первыми; Size -- файлы выводятся в порядке убывания их размера; Unsorted — файлы выводятся в том порядке, в котором они записаны в ката¬ логе; Re-read — повторно прочесть оглавление каталога; Drive -- перейти на другой дисковод. Пункт меню ’’Files” дает возможность выполнять те же команды, которые закреплены за функциональными клавишами. Left Files Commands Options Right NCD tree Find file History EGA lines Alt-FlO Alt-F7 Alt-F8 Alt-F9 Swap panels Ctrl-U Panels on/off Ctrl-0 Compare directories Menu file edit extension file edit Рис. 6.6. Меню Norton Commander - пункт ’’Commands”
Работа с Norton Commander 57 Пункт меню ’’Commands” позволяет выполнять следующие ко¬ манды Norton Commander: NCD tree — вывод на экран дерева каталогов на диске для быстрого перехода в другой каталог (то же, что команда [Alt—F10]); Find file - поиск файла на диске (то же, что команда [Alt—F7]); History — просмотр команд, введенных в командной строке MS DOS. Клави¬ шами перемещения курсора [Т] и [4] можно выделить одну из этих команд. На¬ жав клавишу [Enter], можно затем выполнить выделенную команду. Такой про¬ смотр команд можно сделать также, нажав [Alt—F8]; EGA lines — переключение в режим вывода 43 строк на экран (для монитора типа EGA) и обратно, в режим вывода 25 строк на экран. Следует заметить, что при выводе 43 строк на экран глаза утомляются значительно быстрее. Это пере¬ ключение можно выполнить также, нажав [Alt—F8]; . Swap panels - панели Norton Commander "меняются местами” - то, что было изображено на одной панели, изображается на другой. Это действие можно выпол¬ нить, нажав [Ctrl—U]; Panels on/off - удаление панелей Norton Commander с экрана или восстанов¬ ление их на экране (то же, что [Ctrl—О]); Compare directories — сравнение каталогов, изображенных на панелях Norton Commander. В каждом каталоге выделяются файлы, отсутствующие в другом ка¬ талоге или имеющие в другом каталоге иной размер или дату последнего обновле¬ ния; Menu file edit — редактирование списка команд, выводимого при нажатии пользователем клавиши [F2] (см. ниже); extension file edit - редактирование файла NC.EXT, задающего действие Norton Commander при нажатии пользователем клавиши [Enter] в зависимости от расширения имени выделенного файла (см. ниже). Пункт меню ’’Options” (рис. 6.7) позволяет задавать режимы ра¬ боты Norton Commander. Включенные режимы слева отмечены галоч¬ кой. Чтобы установить или отменить режим, надо выделить его кла¬ вишами перемещения курсора и нажать [Enter]. Left Files Commands Options Right Color... Auto menus J Path prompt J Key bar Ctrl-B J Full screen J Mini status У Ins moves down J cLock Editor... Save setup Shift-F9 Рис. 6.7. Меню Norton Commander — пункт ’’Options” Подменю, соответствующее пункту ’’Options”, содержит следую¬ щие пункты: Color - выбор цветов, используемых Norton Commander, в зависимости от ти¬ па монитора; Auto menus — после выполнения одной из команд из пользовательского меню (выводимого при нажатии клавиши [F2]) на экран опять выводится пользователь¬ ское меню; Path prompt — когда этот режим включен, то приглашение MS DOS в низу эк¬ рана включает информацию о текущем диске и текущем каталоге, а если он вы¬ ключен, то только о текущем диске;
58 Глава 6 Key bar — когда этот режим включен, в последней строке экрана выводится напоминание о значениях функциональных клавиш. Включить и выключить этот режим можно также, нажав [Ctrl—В]; Full screen — выводить панели Norton Commander размером в полный экран (режим включен) или в половину экрана (режим выключен); Mini status - когда этот режим включен, в нижней части каждой панели вы¬ водится строка с информацией о помеченных файлах на панели (их количестве и общем размере); Ins moves down — при нажатии клавиши. Ins (для пометки файла) выделен¬ ный участок смещается вниз, т.е. текущим становится следующий файл; cLock — выводить в правом верхнем углу экрана текущее время; Editor - указание редактора, вызываемого при нажатии клавиши [F4] (’’Edit”). Можно выбрать встроенный (Built-in) в Norton Commander редактор или указать какой-то другой редактор (External). В последнем случае надо указать ко¬ мандную строку, используемую при вызове этого редактора. В этой командной строке можно использовать те же способы указания информации о текущем фай¬ ле, что и при редактировании файла NC.EXT (см. ниже); Save setup — сохранить установленные режимы работы Norton Commander. При следующем запуске Norton Commander все его режимы (устанавливаемые в пунктах меню ’’Left”, ’’Right” и ’’Options”) будут такими же, как в момент выпол¬ нения команды ’’Save setup”. Кроме того, если в момент выполнения команды ’’Save setup” обе панели содержат оглавления каталогов, то при следующем запу¬ ске одна из панелей будет содержать оглавление текущего каталога, а другая - ог¬ лавление того каталога, который был текущим в момент выполнения команды ’’Save setup”. Сохранить установленные режимы работы Norton Commander можно также, нажав [Shift-F9]z. Определение действий Norton Commander в зависимости от расширения имени файла При нажатии пользователем клавиши [Enter] в момент, когда вы¬ делен какой-либо файл, Norton Commander может выполнить некото¬ рую команду в зависимости от расширения имени этого файла. Какая именно команда будет выполнена, указывается в файле NC.EXT, ко¬ торый должен располагаться в том же каталоге, что и сама програм¬ ма Norton Commander. Файл NC.EXT может редактироваться самим Norton Commander (пункты меню ’’Commands”, ’’extension file edit”) или любым другим текстовым редактором. Опишем структуру файла NC.EXT. Каждая его строка должна иметь следующий вид: расширение: команда, причем в расширении можно использовать символы * и ? (имеющие тот же смысл, что и в командах MS DOS). В команде можно использовать следующие сим¬ волы для указания информации о выделенном файле: ! - имя файла без указания расширения; ! . 1 — имя файла с указанием расширения; ! : — имя текущего дисковода с двоеточием; ! \ -- путь к текущему каталогу; ! ! — символ ”!”. Например, если полное имя выделенного файла - C:\WORK\PAPER.DOC, то значения этих символов таковы: ! = PAPER, ! . ! = PAPER.DOC, ! : = С:, ! \ = \WORK, ! ! = ! .
Работа с Norton Commander 59 Меню команд пользователя При нажатии пользователем клавиши [F2] Norton Commander вы¬ водит на экран список команд, указанный пользователем в файле NC.MNU. Пользователь может клавишами перемещения курсора [t] и [i] выделить нужный пункт этого списка и, нажав клавишу [Enter], выполнить соответствующие команды. Следует заметить, что файл NC.MNU может располагаться либо в текущем каталоге, либо в корневом каталоге диска. Если файл NC.MNU имеется и в текущем каталоге, и в корневом каталоге дис¬ ка, то используется файл из текущего каталога. Файл NC.MNU можно редактировать самим Norton Commander (пункты меню ’’Commands”, ’’Menu file edit”) или любым другим тек¬ стовым редактором. Опишем структуру файла NC.MNU. Каждому элементу пользова¬ тельского меню соответствуют две или более строки в файле NC.MNU. В первой из этих строк с первой позиции указывается сооб¬ щение, выводимое в меню. Перед ним можно задавать имя функцио¬ нальной клавиши с последующим двоеточием, например PR - печать файла или Fl: PR — печать файла Если указано имя функциональной клавиши, то эта клавиша мо¬ жет использоваться для быстрого выбора данного пункта меню поль¬ зовательских программ. Следующие строки описания пункта меню должны содержать ко¬ манды, выполняемые при выборе этого пункта меню. В первой пози¬ ции этих строк должен быть пробел. Пример описания пункта меню: Fl: SD - сжатие диска CHKDSK С: SD С: /А /С Файл dirinfo Если в панели Norton Commander выводится сводная информация о диске и каталоге на другой панели (см. рис. 6.1, правая панель), то в нижней части панели с этой информацией выводятся также одна или несколько строк файла dirinfo, если такой файл имеется в теку¬ щем каталоге. В том случае, когда в текущем каталоге файла dirinfo нет, в нижней части информационной панели выводится сообщение No ’dirinfo’ file in this directory (В этом каталоге нет файла dirinfo) Файл dirinfo должен быть текстовым. В информационную панель Norton Commander выводятся его первые 11 строк (если включен ре¬ жим Norton Commander ’’Full screen”) или одна строка (если этот ре¬ жим выключен). Из каждой строки выводится не более 38 символов. Как правило, в файле dirinfo записывают информацию о назначе¬ нии того каталога, в котором находится этот файл.
6.0 Глава 6 Краткая справка по Norton Commander Переход в другой каталог — надо выделить этот каталог и нажать [Enter]. Перейти на другую панель — [Tab]. Выбор группы файлов Включить файл в группу — [Ins]. Исключить файл из группы - [Ins]. Включить в группу файлы по маске - нажать [+] на функциональной клавиа¬ туре и ввести маску. Исключить из группы файлы по маске — нажать [—] на функциональной кла¬ виатуре и ввести маску. Выбранную группу файлов можно: [F5] - скопировать; [F6] — переименовать или переместить в другой каталог; [F8] — удалить. Управление панелями Norton Commander [Ctrl-0] [Ctrl-P] [.Ctrl-U] [Ctrl—Fl] [Ctrl—F2] [Alt-Fl] [Alt—F2] — убрать панели с экрана/вывести панели на экран. — убрать одну из панелей (не текущую) с экрана/вывести па¬ нель на экран. — поменять панели местами. — убрать левую панель с экрана/вывести левую панель на эк¬ ран. — убрать правую панель с экрана/вывести правую панель на экран. — вывести в левой панели оглавление другого диска. — вывести в правой панели оглавление другого диска. [Fl] - Help [F2] - User [F3] - View [F4] - Edit [F5] - Copy [F6] - Renmov [F7] - MkDir [F8] - Delete [F9] - Menu [F10] - Quit [Shift—F3]- View [Shift—F4] - Edit [Shift—F5] [Shift—F6] [Shift-F9] [Alt-F7] [Alt—F8] [Alt—F9] [Alt-FlO] Назначение функциональных клавиш - краткая информация о назначении клавиш. - вывод меню команд пользователя. - просмотр файла. - редактирование файла. - копирование файла или группы файлов. - переименование файла (файлов) или каталога, пересылка файла (файлов) в другой каталог. - создание подкаталога. - уничтожение файла, группы файлов или каталога. - меню Norton Commander. - выход из Norton Commander. - просмотр файла. Имя файла запрашивается. - редактирование файла. Имя файла запрашивается. - Сору — копирование файла или группы файлов. Запра¬ шивается, какие файлы и куда копировать. - Renmov — переименование файла (файлов) или каталога, пересылка файла (файлов) в другой каталог. Запрашива¬ ется, какие файлы и как (куда) переименовывать или пе¬ ресылать. - сохранение текущих режимов Norton Commander. - поиск файла на диске. - просмотр и повторное выполнение ранее введенных ко¬ манд. - переключение с 25 на 43 строки на экране. - быстрый переход в другой каталог.
Часть 3 РЕДАКТИРОВАНИЕ ТЕКСТОВ Глава 7 ОБЩИЕ СВЕДЕНИЯ О РЕДАКТИРОВАНИИ ТЕКСТОВ Практически каждый пользователь компьютера встречается с не¬ обходимостью подготовки тех или иных документов — писем, статей, служебных документов, отчетов, рекламных материалов и т.д. Разумеется, эти документы можно подготавливать и без компьютера, например с помощью пишущей машинки. Однако с появлением персональных компьютеров стало значительно проще и удобнее, а следовательно, и выгодней подготавливать документы с их помощью. При использовании персональных компьютеров для подготовки документов текст редактируемого документа выводится на экран, и пользователь может в диалоговом режиме вносить в него свои изменения. Все внесенные изменения сразу же изображаются • i экране компьютера, и потом при распечатке текста будет выведен красиво оформленный текст, в котором учтены все сделанные пользователем исправления. Пользователь может переносить куски текста из одного места документа в другое, использовать несколько видов шрифтов для выделения отдельных участков текста, печатать подготовленный документ на принтере в нужном числе экземпляров. Удобство и эффективность применения компьютеров для подго¬ товки текстов привели к созданию множества программ для обработ¬ ки документов. Такие программы называются редакторами текстов (Word Processors). Возможности этих программ различны — от про¬ грамм, предназначенных для подготовки небольших документов про¬ стой структуры,' до программ, предназначенных для набора, оформле¬ ния и полной подготовки к типографскому изданию книг и журналов (издательские системы). Программы для обработки документов в отличие от редакторов текстов программ ориентированы на работу с текстами, имеющими структуру документа, т.е. состоящими из разделов, страниц, абзацев, предложений, слов и т.д. Например, редактор для обработки доку¬ ментов может обеспечивать автоматическую нумерацию страниц и сносок, печать верхних и нижних заголовков страниц, автоматиче¬
62 Глава 7 ский перенос слов на новую строку, выравнивание правого края абза¬ ца, построение оглавлений, индексов и т.д. Для начинающих пользователей целесообразно сначала освоить какой-либо несложный редактор текстов, а затем, если его возможно¬ стей окажется недостаточно, перейти к работе с более сложным ре¬ дактором. В следующих двух главах описываются два несложных редактора текстов: ЛЕКСИКОН и ChiWriter. Эти два редактора широко распро¬ странены в СССР, легки в обучении и просты в использовании. Тек¬ стовый редактор ЛЕКСИКОН предназначен для обработки неслож¬ ных документов с текстом на русском и английском языках. ЛЕКСИ¬ КОН удобен для русскоязычных пользователей тем, что его сообще¬ ния выдаются на русском языке. Текстовый редактор ChiWriter (из¬ готовитель — Horstmann Software Design Corporation) обладает значи¬ тельно большими возможностями, чем ЛЕКСИКОН, однако он не ме¬ нее прост в использовании. При работе с ChiWriter Вы видите на эк¬ ране текст в том виде, в котором он будет напечатан, что очень удоб¬ но и наглядно (это свойство называется WYSIWYG — What You See Is What You Get, т.е. что Вы видите, то и получите). ChiWriter позволяет набирать текст с использованием русского, английского, греческого языка, различных европейских языков, математических и химических формул, диаграмм, таблиц и специальных символов. С помощью текстовых редакторов такого класса, как ChiWriter, можно редактировать документы средних размеров и сложности — статьи, письма, документацию на какие-либо изделия и т.д. Для под¬ готовки более сложных документов требуются более продвинутые текстовые редакторы. В качестве примера такого редактора укажем Microsoft Word, обладающий очень широкими возможностями по ре¬ дактированию документов (он не позволяет подготавливать текст с формулами, но его модификация Microsoft Word for Windows может и это). Для подготовки рекламных буклетов, оформления журналов и книг используются специальные издательские системы. Они позволя¬ ют подготавливать и печатать на лазерных принтерах сложные доку¬ менты высокого качества. Имеются два основных вида издательских систем. Издательские системы первого вида очень удобны для подготовки небольших мате¬ риалов с иллюстрациями, графиками, диаграммами, различными шрифтами в тексте, например рекламных буклетов и небольших жур¬ налов. Эти системы всегда сделаны по принципу WYSIWYG. Типич¬ ный пример такой системы — PageMaker. Издательские системы второго, вида более подходят для подготов¬ ки больших документов, например книг. Они обладают теми же воз¬ можностями, что и системы первого направления, но для них харак¬ терно наличие развитого аппарата параметров размещения текста. Это позволяет легко изменять оформление документа, сохраняя един¬ ство стиля. Например, при подготовке книги объемом 500 страниц к изданию может ока¬ заться необходимым изменить размер пропуска перед всеми заголовками третьего уровня (т.е. с номером вида 1.1.1) с 1,2 на 1,4 см, изменить гарнитуру этих заго¬
Общие сведения о редактировании текстов 63 ловков на гарнитуру гельветика, а при написании интегралов во всех формулах располагать пределы интегрирования не справа от знака интеграла, а сверху и снизу от знака интеграла. Если бы эти изменения было необходимо делать в каж¬ дом месте вручную, то это заняло бы очень много времени и привело бы к появле¬ нию ошибок, т.е. к необходимости повторного считывания текста человеком. Од¬ нако на самом деле для выполнения этих изменений достаточно поменять соответ¬ ствующие параметры текста, и после этого все нужные изменения будут сделаны автоматически. Заметим, что редактор Microsoft Word также обладает возможно¬ стями управления размещением текста с помощью параметров. Одной из самых распространенных систем второго вида является система Ventura Publisher фирмы Xerox. Она построена по принципу WYSIWYG, управляется с помощью меню и может считывать тек¬ сты, подготовленные с помощью других текстовых редакторов (на¬ пример, Microsoft Word), сохраняя при этом все параметры формати¬ рования и выделения текста, установленные этими редакторами. Счи¬ тав некоторый текст, можно затем установить параметры его разме¬ щения, шрифты различных частей текста, вставить рисунки и т.д. Для подготовки статей и книг с математическими формулами ши¬ роко используется система ТеХ, разработанная известным математи¬ ком Д.Кнутом, автором переведенного в СССР трехтомного сочине¬ ния "Искусство программирования для ЭВМ”. Она менее удобна в ра¬ боте, так как не построена по принципу WYSIWYG, но зато позволя¬ ет легко подготавливать математические и технические тексты любой сложности и прекрасного качества. При этом все параметры располо¬ жения текста, вид формул, заголовков, ссылок, списка литературы и т.п. можно быстро настроить на любые требования издательства. Все издательские системы позволяют печатать на лазерном при¬ нтере оригинал-макеты для типографских изданий, а также подготав¬ ливать текст для фотонаборных автоматов. Глава 8 ТЕКСТОВЫЙ РЕДАКТОР ЛЕКСИКОН В настоящей главе описывается текстовый редактор ЛЕКСИКОН. Для того чтобы быстрее научиться работать с ЛЕКСИКОНом, следует сначала один—два раза прочесть эту главу без компьютера, что позво¬ лит усвоить основные понятия и концепции, на которых основывает¬ ся работа с редактором. После этого надо прочесть эту главу у компь¬ ютера, выполняя описываемые в ней действия на компьютере. В конце главы приведена краткая сводка команд, используемых при работе с ЛЕКСИКОНом. После того как Вы приобрели некоторые начальные навыки работы с ЛЕКСИКОНом, Вам будет вполне доста¬ точно использовать эту сводку для работы с ЛЕКСИКОНом. При воз¬ никновении каких-либо вопросов или проблем следует, разумеется, посмотреть соответствующее место в настоящей главе или в каком- нибудь другом описании ЛЕКСИКОНа. Если Вы будете работать с ЛЕКСИКОНом постоянно, то через весьма небольшое время Вам будет не нужна и краткая сводка ко-
64 Глава 8 манд, так как Вы уже будете помнить все нужные команды. Однако после более или менее длительного перерыва в работе с ЛЕКСИКО¬ НОМ эта сводка будет снова полезна для Вас. Назначение редактора ЛЕКСИКОН Текстовый редактор ЛЕКСИКОН предназначен для обработки не¬ сложных документов с текстом на русском и английском языках. ЛЕКСИКОН обеспечивает следующие функции редактирования тек¬ стов: ♦ просмотр и корректировку текста; ♦ автоматическое форматирование абзацев текста; ♦ автоматическое разбиение текста на страницы; ♦ перенос фрагментов текста из одного места в другое; ♦ создание оглавления разделов документа; ♦ использование подчеркивания, курсива и полужирного шрифта для выделения частей текста; ♦ одновременное редактирование нескольких документов. С помощью ЛЕКСИКОНа можно корректировать тексты про¬ грамм, командных файлов MS DOS и другие текстовые файлы. Настоящее описание соответствует версии 6.67 ЛЕКСИКОНа от 23 октября 1988 г. Вызов ЛЕКСИКОНа Будем предполагать, что программа редактора ЛЕКСИКОН назва¬ на LEXICON.EXE и находится в одном из каталогов, указанных в ко¬ манде MS DOS path или в текущем каталоге. Для вызова ЛЕКСИКОНа следует набрать LEXICON или LEXICON имя-редактируемого-файла Если в команде вызова ЛЕКСИКОНа указано имя файла, которо¬ го нет на диске, то ЛЕКСИКОН сообщит об этом. Работа будет про¬ должаться так, как если бы этот файл существовал и был пустым. Выход из ЛЕКСИКОНа Для выхода из ЛЕКСИКОНа следует нажать клавишу [F10], с по¬ мощью горизонтальных стрелок перемещения курсора выделить во второй строке экрана слово ’’Выход” и нажать [Enter]. Если редактируемый текст не был изменен, ЛЕКСИКОН окончит работу. Если же текст был изменен, то появится сообщение ”В окне несохраненный текст”, и Вам будет предложено нажать одну из трех клавиш: [Enter] — сохранить текст; [Esc] — выход без сохранения текста; Пробел — не выходить из ЛЕКСИКОНа. Если ЛЕКСИКОН не знает, в какой файл следует сохранять отре¬ дактированный текст, он спросит об этом.
Текстовый редактор Лексикон 65 Получение помощи Для получения подсказки о назначениях функциональных клавиш, форматировании абзацев, выделении фрагментов текста и т.п. надо нажать клавишу [F1]. Следующие экраны подсказки выво¬ дятся при повторном нажатии клавиши [F1]. Для возврата к редакти¬ рованию текста нажмите клавишу [Esc]. Вид экрана после ьхода в ЛЕКСИКОН В двух верхних строках экрана ЛЕКСИКОНа располагается меню. С помощью меню можно выполнять различные действия с текстом, устанавливать параметры работы ЛЕКСИКОНа и т.д. Третья строка экрана является информационной, в ней выводятся сведения о режимах работы ЛЕКСИКОНа, о положении курсора в тексте и т.д. Остальную часть экрана занимает рабочее поле, содержащее ре¬ дактируемый текст (или тексты). Всего может одновременно редакти¬ роваться до девяти текстов. Каждый текст располагается в своем ок¬ не на экране. В начале работы, как правило, имеется одно окно, за¬ нимающее весь экран. Информационная строка Этот пункт при первом чтении можно опустить. Информационная строка ЛЕКСИКОНа делится на четыре поля. В первом (ле¬ вом) пиле строки располагается информация о параметрах ЛЕКСИКОНа: ”ДОК” или ’’ТЕКСТ” - режим ”Документ”/”Текст”; ’’ЗАМ” - режим замены. Если в поле строки символов ”ЗАМ” нет — режим вставки; ”—| ” - режим выравнивания правого края абзаца. Если символа ”—| ” нет то выравнивание не производится; - режим переноса. Если символа нет, то слова переносятся на новую строку только целиком; — режим подчеркивания. Если символа нет, то вводимый текст не подчеркивается при печати; Цифра - номер текущего шрифта: 0 - обычный шрифт; 1 - курсив; 2 - полу¬ жирный шрифт; 3 — полужирный курсив. Во втором поле сначала приводится имя редактируемого файла. Затем в этом поле следуют три или четыре числа: ♦ число строк в редактируемом файле; ♦ номер текущей строки (в которой находится курсор); ♦ номер текущей позиции в строке (позиции курсора); ♦ номер шрифта (см. выше) у символа, на который указывает курсор, плюс 8, если этот символ подчеркнут. Это число выводится, если курсор не указывает на пустую позицию. В третьем поле указывается режим клавиатуры: ”РУС” - режим ввода русских букв; ”ЛАТ” - режим ввода латинских букв; ”***” - режим ”ЕС 1840”. В этом режиме переключение с ввода русских букв на ввод латинских букв осуществляется клавишами ”РУС” и ”ЛАТ” (на компьюте¬ рах советского производства) или драйвером клавиатуры, а не с помощью клави¬ ши [F9] ЛЕКСИКОНа. В четвертом (правом) поле информационной строки сообщаются текущие дата и время. 3 Фигурнов В. Э.
66 Глава 8 Меню ЛЕКСИКОНа В двух верхних строках экрана ЛЕКСИКОНа располагается меню, с помощью которого можно выполнять различные действия с тек¬ стом, устанавливать параметры работы ЛЕКСИКОНа и т.д. Для входа в меню следует нажать клавишу [F1OJ. После этого од¬ но из слов во второй строке (пунктов меню) окажется выделенным. В первой строке будет дано краткое объяснение выделенного пункта ме¬ ню. С помощью горизонтальных стрелок перемещения курсора [*--] и [-*], а также клавиш [Ноше] и [End] можно выделять различные пунк¬ ты меню. По мере перемещения по пунктам меню в первой строке бу¬ дет изображаться объяснение к текущему пункту меню. Выделив нужный пункт меню, следует нажать клавишу [Enter]. Нужный пункт меню можно выбрать также нажатием клавиши с буквой, с ко¬ торой начинается этот пункт меню. После того как Вы выбрали какой-либо пункт меню, во второй строке может появиться соответствующее ему подменю, в котором таким же образом следует выбрать нужный пункт. Если Вы передумали выбирать какой-либо пункт меню, нажмите клавишу [Esc] для выхода из меню или [F10] для возврата на верхний уровень меню. Перемещение по тексту Курсор. Мигающий символ на экране, похожий на знак подчерки¬ вания, называется курсором (в графическом режиме экрана курсор изображается белым прямоугольником и не мигает). Курсор указыва¬ ет на текущую позицию в тексте. Все изменения в тексте и вставки нового текста происходят в той позиции, на которую показывает кур¬ сор. Перемещение курсора по тексту. Курсор можно перемещать с по¬ мощью клавиш [<-], [-►], [t], [1] на одну позицию влево, вправо, вверх и вниз. Кроме того, курсор можно перемещать по тексту с помощью следующих клавиш: [PgUp] и [PgDn] — на страницу (размер экрана) вверх и вниз; [Ноте] и [End] — к первому и последнему символу в строке; [Ctrl-Ч и [Ctrl—] — на слово влево и вправо; [Shift—«-] и [Shift—►] — на начало строки и на конец строки; [Shift-1] и [Shift-4] — на начало текста и на конец текста. Переход к строке с данным номером. С помощью меню можно быстро перейти к строке с данным номером. Для этого надо выбрать пункт меню ’’Перейти” и набрать номер нужной строки. Переход к отмеченному ранее месту документа. ЛЕКСИКОН по¬ зволяет отметить место в тексте, чтобы потом можно было быстро туда вернуться. Это делается с помощью пункта меню ’’Отметить”. На запрос ЛЕКСИКОНа надо указать букву (”А”, ”Б” и т.д.), которая бу¬ дет обозначать текущую позицию. После этого к отмеченной позиции можно будет быстро перейти с помощью пункта меню ’’Перейти”.
Текстовый редактор Лексикон 67 При этом на запрос ЛЕКСИКОНа надо указать букву, обозначающую нужную позицию. Ввод текста Для ввода текста нужно переместить курсор в то место, в которое надо вводить новый текст, и начать набор текста, нажимая соответ¬ ствующие буквенно-цифровые клавиши. Вводимый текст помещается в ту позицию, в которой находится курсор. Ввод символов из верхнего регистра клавиатуры. Если необходи¬ мо ввести символ из верхнего регистра клавиатуры, например про¬ писную букву, то необходимо нажать клавишу [Shift] и, не отпуская ее, нажать клавишу с нужным символом. Переключение на другой алфавит. Если Вы хотите перейти от ввода русских букв к вводу латинских букв или наоборот, необходи¬ мо переключить клавиатуру с режима ввода русских букв в режим ввода латинских букв или наоборот. Это делается с помощью клави¬ ши [F9] в режиме ЛЕКСИКОНа ’’IBM PC” и с помощью клавиш ”РУС” и ”ЛАТ” (на компьютерах советского производства) или драй¬ вером клавиатуры в режиме ЛЕКСИКОНа ”ЕС 1840”. Как начать новый абзац. Чтобы начать новый абзац текста, надо нажать клавишу [Enter]. Курсор переходит на новую строку и уста¬ навливается в позицию начала первой строки абзаца. Ввод текста в режиме вставки и в режиме замены. При вводе текста ЛЕКСИКОН может по-разному поступать с теми символами, которые находятся справа от курсора. В режиме вставки эти симво¬ лы сдвигаются вправо, и новый текст вставляется между уже имею¬ щимися символами, не стирая их. В режиме замены новые символы вводятся вместо старых, ’’заменяя” их. В начале работы ЛЕКСИКОН находится в режиме вставки. Переключение из режима вставки в ре¬ жим замены и обратно осуществляется с помощью клавиши [Ins], В режиме замены в левом поле информационной строки находятся сим¬ волы ’’ЗАМ”. Перенос слов и выравнивание правой границы при вводе текста. Если ЛЕКСИКОН находится в режиме редактирования ’’Документ” (в левой части информационной строки находятся символы ”ДОК”), то ЛЕКСИКОН будет переносить слова, которые не помещаются в теку¬ щей строке, на новую строку. При этом, если включен режим пере¬ носа (в левом поле информационной строки имеется символ ”), то ЛЕКСИКОН может перенести часть слова, не умещающегося в стро¬ ке, на новую строку. Если режим переноса выключен, то слово, не умещающееся в строке, будет переноситься на новую строку только целиком. Следует заметить, что ЛЕКСИКОН не всегда делает перенос правильно. Режим переноса включается и выключается с помощью меню ’’Абзац”, ’’Перенос”. Если включен режим выравнивания правого края абзаца (в левом поле информационной строки имеются символы ”—| ”), то при вводе нового текста происходит также выравнивание правого края абзаца с в*
68 Глава 8 помощью вставки дополнительных пробелов между словами. Режим включается и выключается с помощью меню ’’Абзац”, ’’Выключка”. Если ЛЕКСИКОН находится не в режиме ’’Документ”, а в режиме ’’Текст” (в левой части информационной строки находятся символы ’’ТЕКСТ”), то никакого автоматического переноса на новую строку ЛЕКСИКОН не производит. При нажатии клавиши [Enter] курсор пе¬ реходит на новую строку и устанавливается под первым непробелом в предыдущей строке. Корректировка текста Стирание символа. Для того чтобы стереть лишний или непра¬ вильный символ, надо подвести к нему курсор и нажать клавишу [Del] Клавиша [Backspace] (стрелка налево над клавишей [Enter]) уда¬ ляет символ, находящийся слева от курсора. Разбиение строки на две. Чтобы разбить строку на две, надо на¬ жать клавишу [Enter] в том месте, где надо разделить строку. Соединение двух строк. Чтобы соединить две строки, надо поме¬ стить курсор правее последнего символа первой строки и нажать [Del]. Удаление строки. Чтобы удалить строку, нажмите [F3] и [Ctrl—КЗ]. Операции с участками текста Часто требуется выполнить некоторые действия с фрагментом текста, например удалить фрагмент текста, переместить его в другое место документа, изменить в нем шрифт и т.д. Для этого требуется сначала выделить нужный фрагмент текста, а затем указать, какие действия необходимо с ним сделать. Выделение участка текста. Для того чтобы выполнить какие-либо действия с фрагментом текста, надо сначала выделить нужный фраг¬ мент текста. Выделяемый текст может состоять из нескольких строк (строчный фрагмент) или из прямоугольной области (блок текста). Прямоугольные фрагменты (блоки) текста наиболее часто использу¬ ются при редактировании таблиц. Для того чтобы начать выделение строчного фрагмента, подведите курсор к первой или к последней строке выделяемого участка текста и нажмите [F3]. Чтобы начать выделение блока текста, подведите курсор к одному из углов выделяемого блока текста и нажмите [Shift—F3]. З а м е ч а н и е. Начать выделение участка текста можно также с помощью пунктов меню ’’Фрагмент”, ’’Выделить”. После начала выделения текста с помощью клавиш перемещения курсора можно указать нужный фрагмент текста. Для отмены сде¬ ланного выделения нажмите [F4] или же выберите в меню ’’Фраг¬ мент”, ’’Снять Выделение”.
Текстовый редактор Лексикон 69 Действия с выделенным участком текста. С выделенным участ¬ ком текста можно произвести следующие действия: Удалить — для этого нажмите [Ctrl—F3]. Удаленный из текста фрагмент при этом помещается в специальный бу¬ фер (карман). Запомнить — т.е. поместить в буфер, не удаляя из текста: ♦ для строчного фрагмента — нажмите [Ctrl—F3], [Ctrl—F4] и [F4J; ♦ для блока текста - нажмите [Ctrl—F3], [Shift—F4] и [F4]. Изменить шрифт: установить/отменить в тексте: подчеркивание — [Alt—F2]; курсивный шрифт - [Alt—F3]; полужирный шрифт — [Alt—F4]. Установить шрифт выделенного текста — нажать [Alt—F1] и затем нажать цифру: О - обычный шрифт; 1 — курсив; 2 — полужирный шрифт; 3 - полужирный курсив. Замечание. При удалении блочного фрагмента текста результат зависит от состояния режима вставки/замены: ♦ в режиме вставки текст справа от удаляемого блока смещается налево на ширину удаляемого блока текста; ♦ в режиме замены на месте удаленного блока текста остается пустое место, заполненное пробелами (это удобно при редактировании таблиц). Строчный фрагмент текста можно также: ♦ отформатировать как один абзац — нажать [Ctrl—F8J; ♦ сдвинуть налево - [Ctrl—F5J; ♦ сдвинуть направо - [Ctrl—F6]. После того как выполнены все желаемые действия с выделенным фрагментом текста, нажмите [F4] для отмены выделения. Вставка текста из буфера. Участок текста, запомненный в буфере (кармане), можно вставить в редактируемый документ любое число раз. Чтобы вставить текст из буфера как строчный фрагмент, следует подвести курсор к строке, перед которой надо вставить этот фраг¬ мент, и нажать [Ctrl—F4], Чтобы вставить текст из буфера как блок текста, следует подве¬ сти курсор к тому месту, куда должен быть вставлен левый верхний угол блока, и нажать [Shift-F4]. Можно также вставить текст из буфера и с помощью меню ”Фраг- мент”, ’’Вставить”. При вставке блока текста, т.е. при нажатии [Shift—F4], результат зависит от состояния режима вставки/замены:
70 Глава 8 ♦ в режиме вставки вставляемый блок ’’отодвигает” текст справа от того места, в которое он вставляется. Иначе говоря, текст справа от того места, куда вставляется блок, смещается напра¬ во на ширину вставляемого блока текста; ♦ в режиме замены вставляемый блок ’’затирает” текст в том мес¬ те, в которое он вставляется. Это удобно при редактировании таблиц. Вставленный участок текста непосредственно после вставки ока¬ зывается выделенным. Это позволяет тут же произвести с ним необ¬ ходимые действия, например изменить в нем шрифт. Если никаких дополнительных действий со вставленным текстом выполнять не на¬ до, нажмите [F4] для отмены выделения текста. Форматирование текста ЛЕКСИКОН позволяет использовать два вида форматирования текста: центрирование строк и форматирование абзацев. Центрирование строк. Чтобы расположить текст строки по цент¬ ру (посередине между левой и правой границами абзаца, см. ниже), надо подвести курсор к этой строке и нажать [F8]. Понятие абзаца. С помощью ЛЕКСИКОНа легко можно редакти¬ ровать документы, состоящие из абзацев. ЛЕКСИКОН понимает под абзацем последовательность строк, выравненных слева и справа по некоторым границам, причем первая из этих строк может начинаться не на левой границе (т.е. образовывать абзацный отступ или выступ). У абзаца имеются три характеристики: ♦ позиция левой границы абзаца; ♦ позиция правой границы абзаца; ♦ смещение начала первой строки абзаца относительно левой гра¬ ницы абзаца (положительное смещение соответствует отступу, отрицательное - выступу первой строки). Форматирование абзацев. В результате исправлений текста, как правило, бывает испорчена только правая граница абзаца, а левая остается правильной. Если левая граница абзаца не испорчена, то для форматирования абзаца надо подвести курсор к первой строке абзаца (или к строке, начиная с которой надо переформатировать оставшую¬ ся часть абзаца) и затем нажать [Ctrl—F8] (или выбрать в меню ’’Аб¬ зац”, ’’Формат”). Если левая граница абзаца испорчена или надо объединить не¬ сколько абзацев в один, следует указать ЛЕКСИКОНу, какие именно строки надо рассматривать как один абзац. Для этого нужные строки надо выделить: нажать в первой или последней строке нужного фраг¬ мента [F3], а затем выделить нужный фрагмент клавишами [t] и [1]. После выделения нужных строк следует нажать [Ctrl—F8]. При форматировании абзацев, как и при вводе нового текста, учи¬ тывается, включены ли режимы выравнивания правого края абзаца и переноса слов (см. п. ’’Ввод текста”).
Текстовый редактор Лексикон 71 Форматирование всего текста ниже курсора. ЛЕКСИКОН может отформатировать весь текст ниже курсора. Для этого выберите в ме¬ ню ”Абзац”, ’’ГлобФорм”. Установка границ абзаца. Установка границ абзаца может осуще¬ ствляться двумя путями: 1) можно установить курсор на первую строку абзаца с нужными параметрами и нажать [Shift—F7] (или выбрать в меню ’’Абзац”, ’’Об¬ разец”). После этого при выполнении форматирования все абзацы бу¬ дут иметь такую.ясе структуру, как абзац - образец; 2) можно установить характеристики абзаца отдельно. Для этого имеются два способа. Способ 1 — с помощью режимов меню "Абзац”: ’’Левая” — установка левой границы абзаца; ’’Правая” - установка правой границы абзаца; ’’Отступ” — установка величины абзацного отступа. Надо выбрать нужный пункт меню и на соответствующий запрос ввести новое значение характеристики абзаца. Способ 2 — с помощью функциональных клавиш.. Надо подвести курсор к позиции левой или правой границы абзаца или начала пер¬ вой строки абзаца и нажать: [F7] - для установки левой границы; [Alt—F7] — для установки правой границы; [Ctrl—F7] — для установки абзацного отступа. Следует заметить, что величину абзацного отступа при использо¬ вании этого способа следует устанавливать после установки левой границы, поскольку величина абзацного отступа получается вычита¬ нием номера колонки левой границы абзаца из номера колонки, в ко¬ торой начинается первая строка абзаца. Использование различных шрифтов ЛЕКСИКОН позволяет выделять участки текста другим шрифтом: курсивом, подчеркиванием, полужирным шрифтом и т.д. Если мони¬ тор находится в графическом режиме, то шрифты символов изобра¬ жаются так, как они будут выглядеть при печати. В текстовом режи¬ ме монитора различные шрифты изображаются с помощью символов различного цвета. Переключение текущего шрифта. Для переключения текущего шрифта (т.е. шрифта, в котором будет набираться вводимый текст) имеются клавиши [Alt—Fl]—[Alt—F4]: [Alt—Fl] — установить шрифт по его номеру (см. ниже); [Alt—F2] — установить/отменить подчеркивание; [Alt—F3] — установить/отменить курсивный шрифт; [Alt—F4] — установить/отменить полужирный шрифт. Следует заметить, что шрифт может одновременно быть подчерк¬ нутым, полужирным и курсивным. При установке шрифта с помощью нажатия [Alt-Fl] ЛЕКСИКОН просит ввести номер шрифта:
72 Глава 8 О — обычный шрифт; 1 — курсив; 2 - полужирный шрифт; 3 — полужирный курсив. Изменение шрифта в выделенном фрагменте текста» Если на эк¬ ране выделен фрагмент текста, то при нажатии [Alt—Fl] - [Alt—F4] меняется не текущий шрифт, а шрифт в выделенном фрагменте. Изображение текущего шрифта в информационной строке. В ле¬ вом поле пяфорЛхГпленной строки указывается помер аегущ... е шрифта, а также символ ”х”, если включен режим подчеркивания. Если курсор не указывает на пустую позицию, то во втором поле ин¬ формационной строки крайнее справа число указывает номер шрифта (см. выше) того символа, у которого находится курсор, плюс 8, если этот символ подчеркнут. Просмотр шрифтов в графическом режиме монитора. Если Вы работаете в текстовом режиме монитора, то символы разных шриф¬ тов изображаются на экране разным цветом. Поэтому иногда Вам бу¬ дет трудно понять, как будут выглядеть на печати те или иные участ¬ ки текста. В этом случае надо нажать клавиши [Shift—F9] для перехо¬ да в графический режим монитора. Посмотрев, как выглядят интере¬ сующие Вас символы, можно вернуться обратно, нажав [Shift—F9] еще раз. Постоянно работать в графическом режиме не рекомендует¬ ся, так как чтение низкокачественных шрифтов символов, используе¬ мых ЛЕКСИКОНом в графическом режиме, приводит к быстрому утомлению глаз. Контекстный поиск и замена ЛЕКСИКОН позволяет: ♦ найти в редактируемом документе любое слово или фразу (под¬ строку); ♦ заменить любую подстроку на другую, запрашивая или не за¬ прашивая при этом подтверждение у пользователя. Контекстный поиск. Чтобы найти какую-либо подстроку в редак¬ тируемом тексте, надо войти в режим меню ’’Найти”, набрать нуж¬ ную подстроку и нажать клавишу [Enter]. Поиск будет вестись вперед по тексту, начиная с текущей позиции. Если заданная подстрока будет найдена, то курсор покажет ее положение в тексте. В противном случае в первой строке экрана поя¬ вится мигающее сообщение: ’’Нет вхождений поискового контекста”. Чтобы найти еще раз ту же подстроку ниже по тексту от текуще¬ го положения курсора, нажмите [Ctrl-Fl]. Контекстная замена. Чтобы заменить подстроку в редактируемом тексте на другую подстроку, надо войти в режим меню ’’Заменить”, набрать заменяемую подстроку и нажать [Enter], потом набрать заме¬ няющую подстроку и нажать [Enter]. После этого в появившемся ме¬ ню надо выбрать один из двух пунктов: ’’Найти Первое” или ’’Заме¬ нить Глобально”.
Текстовый редактор Лексикон 73 Если Вы выберете „Заменить Глобально’’, то ЛЕКСИКОН заменит все найденные вхождения заменяемой строки от текущего положения курсора до конца текста. Если же Вы выберете пункт меню „Найти Первое”, то ЛЕКСИ¬ КОН покажет курсором первое найденное вхождение заменяемой строки. Если Вы хотите заменить эту подстроку, нажмите [Ctrl—F2] для выполнения замены. Для нахождения следующей заменяемой подстроки Вы можете нажимать [Ctrl—F1] и для замены найденных подстрок — [Ctrl—F2). Если заменяемая подстрока не найдена, то, как и при поиске подстроки, в первой строке экрана появится мигающее сообщение „Нет вхождений поискового контекста”. Если Вы хотите выполнить замену с теми же значениями искомой и заменяющей подстрок, что и ранее, нажмите [Shift—F2] — для глобальной замены от текущего положения курсора до конца текста; [Ctrl—F1] — для поиска первого вхождения заменяемой подстро¬ ки. Для ее замены следует нажать [Ctrl—F2]. Замечание. Если на экране выделен участок текста, то при глобальной замене замена осуществляется не в пределах участка от текущего положения кур¬ сора до конца текста, а в пределах выделенного участка текста. Разделение текста на страницы В редактируемом тексте можно узнать разбиение на страницы при печати, задать параметры разбиения на страницы, вставить в нужном месте специальный разделитель для перехода на новую страницу и т.д. Для выполнения этих действий имеется пункт меню „Страницы”. Пункт меню „Страницы”. Для управления разбиением текста на страницы имеется пункт меню „Страницы”. При входе в этот пункт открывается подменю: ’’Расставить” — расставить в тексте границы страниц. Границы страниц изо¬ бражаются горизонтальными линиями из дефисов (знаков ’’минус”) через весь эк¬ ран; ’’Шаг” — установить межстрочный промежуток в интервалах; ’’Высота” — установить длину страницы в интервалах; ’’НачНомер” — задать номер первой страницы документа; ’’Колонтитул” - задание строки, размещаемой вверху каждой страницы под номером страницы; ’’УбратьСтраницы” - убрать разделение на страницы из текста от текущей строки до конца текста; ’’Каталог” — подготовить в ’’кармане” список всех заголовков с номерами стра¬ ниц, на которых они находятся. При'этом заголовком считается любая строка, на¬ чинающаяся с одной или нескольких цифр, за которыми стоит точка. Подготов¬ ленный список можно вставить в нужное место документа, нажав [Ctrl—F4]. Вставка и удаление разделителей страниц. Если проведенное ЛЕКСИКОНом разбиение на страницы Вас не устраивает (например, некоторая таблица оказалась разделенной на две страницы), то мо¬ жно вставить разделители страниц там, где это необходимо. Для это¬ го следует установить курсор на ту строку, перед которой надо вста¬ вить разделитель страниц, и нажать [Shift—F8]. Вставленный раздели¬
74 Глава 8 тель страниц будет изображаться двойной горизонтальной чертой че¬ рез весь экран (в отличие от разделителя, вставленного ЛЕКСИКО¬ НОМ, изображаемого одинарной горизонтальной чертой). После встав¬ ки разделителя страниц следует заново расставить страницы в тексте (пункты меню ’’Страницы”, ’’Расставить”), чтобы границы страниц ни¬ же вставленного разделителя были правильными. Чтобы удалить вставленный разделитель страниц, надо выделить строку, в которой он находится, и удалить ее. При этом следует уда¬ лить также и вставленные за этим разделителем номер страницы и колонтитул, если они имеются. Печать текстов Для распечатки документа или установки режимов печати следу¬ ет выбрать в меню пункты ’’Текст” и ’’Печать”. После этого можно изменить режимы печати или начать печать. Меню управления режимами печати. Меню управления режима¬ ми печати вызывается [F10], ’’Печать”. Для начала печати, следует выбрать в меню управления режимами печати пункт ’’Начать”. Остальные ’’Качество” низкое. среднее высшее. ’’Плотность” узкая ’’Бумага’ ’’Отступ” пункты меню задают режимы печати: выбор качества печати. Качество может быть: — текст, набранный в обыкновенном и подчеркнутом шрифтах, печатается с помощью встроенного шрифта принтера, осталь¬ ной текст - в двухпроходном графическом режиме; — весь текст печатается в двухпроходном графическом режиме; — весь текст печатается в четырехпроходном графическом ре¬ жиме. — выбор горизонтальной плотности печати. Плотность может быть: равномерная — печать по 10 символов на дюйм (при этом в ширину стан¬ дартного листа бумаги формата А4 помещается 80 символов); пропорциональная — при печати узкие символы (например, восклицатель¬ ный знак) занимают меньше места, чем широкие, как это принято делать при типографском наборе; — печать по 16,6 символа на дюйм (при этом в ширину стан¬ дартного листа бумаги формата А4 помещается 132 символа), выбор режима подачи бумаги. При печати на отдельных лис¬ тах бумаги (’’Листы”) ЛЕКСИКОН перед печатью каждой страницы выводит сообщение ’’Вставьте страницу”. При этом можно нажать одну из следующих клавиш: [Enter] — печатать следующую страницу; ’’Пробел” — пропустить страницу; [Esc] — окончить печать. При печати на рулонной бумаге (’’Лента”) остановок перед печатью отдельных страниц ЛЕКСИКОН не делает. — выбор величины межстрочного промежутка (в интервалах). Эту величину можно также задать с помощью меню ’’Страни¬ цы”, ’’Шаг”. — выбор величины отступа (расстояния от левого края бумаги до первой позиции печатаемого текста) в позициях. Остановка печати. Во время печати Вы можете нажать клавишу [Esc] для остановки печати. После этого ЛЕКСИКОН предлагает на¬ жать одну из следующих клавиш:
Текстовый редактор Лексикон 75 [Enter] — продолжить печать; ’’Пробел” — пропустить страницу; [Еге] — окончить печать. Действия при ошибках печатающего устройства. При ошибках на принтере выдается сообщение ’’Ошибка на печатающем устройст¬ ве”. Вы можете нажать: клавишу [Esc] — чтобы окончить печать; любую другую клавишу — чтобы продолжить печать. Загрузка и сохранение текстов С помощью режима меню ’’Текст” можно окончить редактирова¬ ние одного документа и перейти к редактированию другого докумен¬ та, сохранить документ под другим именем и т.д. Сохранение текста. Чтобы сохранить редактируемый документ, надо выбрать в меню пункты ’’Текст”, ’’Сохранить”. ЛЕКСИКОН предложит Вам ввести имя файла, в который будет записываться текст. Можно сохранить текст под его старым именем или ввести но¬ вое имя. Если Вы ввели недопустимое имя файла или на диске нет места для записи файла, ЛЕКСИКОН сообщит об этом. Уничтожение текущего текста. Чтобы уничтожить текущий текст, надо выбрать в меню пункты ’’Текст”, ’’Очистить”. Текст унич¬ тожится, разумеется, только в оперативной памяти компьютера, фай¬ лы на дисках при этом не изменятся. После этого можно на место уничтоженного текста загрузить другой документ с диска командой меню ’’Текст”, ’’Загрузить” или же начать набирать новый текст. Загрузка нового текста. Чтобы загрузить в текущее окно новый документ с диска, надо выбрать в меню пункты ’’Текст”, ’’Загрузить”. Выполнение этой операции возможно, только если имеющийся в ок¬ не текст не был изменен или если окно только что было очищено операцией ’’Текст”, ’’Очистить”. Если это условие выполнено, ЛЕК¬ СИКОН предложит ввести имя файла, из которого надо считать текст. Если же условие не выполнено, то ЛЕКСИКОН предложит сна¬ чала сохранить текст или очистить окно. Если Вы забыли имя файла, из которого надо считать текст, то можно выйти в MS DOS командой меню ’’ДОС”, посмотреть имя нуж¬ ного файла командой DIR и вернуться в ЛЕКСИКОН командой MS DOS EXIT . При этом состояние редактируемого текста и текущее по¬ ложение в тексте не изменятся. Работа с окнами ЛЕКСИКОН является многооконным редактором. При работе с ним пользователь может использовать до девяти окон, в каждом из которых может редактироваться свой документ. Кроме того, имеется десятое окно, в котором может редактироваться файл, задающий па¬ раметры принтера. В начале работы с ЛЕКСИКОНом, как правило,
76 Глава 8 имеется одно окно и оно занимает весь экран. Каждое окно ограниче¬ но рамкой и на этой рамке в левом нижнем углу написаны номер ок¬ на и имя загруженного в него файла. Текущее окно. В любой момент времени одно и только одно из окон (то, в котором находится курсор) является текущим. Все кор¬ ректировки текста производятся в текущем окне. Текущим может быть сделано любое другое окно, при этом оно становится видимым целиком. Если это окно занимает не весь экран, то на экране могут быть также видны части других окон. Для того чтобы перейти в дру¬ гое окно (т.е. сделать его текущим), имеются команды: [Alt—1] - перейти в первое окно; [Alt—2] — перейти во второе окно; [Alt—0] — перейти в десятое окно. При наборе этих команд цифра должна нажиматься на верхнем ряду клавиатуры, а не на функциональной части клавиатуры. Любое окно может быть ’’распахнуто” на весь экран командой [Alt—F9). Повторное нажатие [Alt-F9] вернет экран в исходное состо¬ яние. Перенос текста из одного документа в другой. Многооконный ре¬ жим работы очень удобен для переноса фрагментов текста из одного документа в другой. Буфер (’’карман”), в который помещаются удаля¬ емые по команде [Ctrl—F3] фрагменты текста, является общим для всех окон. Поэтому можно поместить фрагмент одного документа в ’’карман”, перейти в окно с другим документом и вставить в него текст из ’’кармана” (с помощью команд [Ctrl—F4] или [Shift—F4], см. выше). Установка расположения и цвета окон. При желании можно ус¬ тановить более нравящееся расположение окон на экране, а также цвет текста и фона в окнах. Для этого имеется режим меню ’’Текст”, ’’Конфигурация”, ’’Ок¬ но”. После входа в этот режим можно выполнять следующие дейст¬ вия: ♦ нажав клавишу [Ins], можно изменять размеры окна. С по¬ мощью стрелок [<-], [-+], [t] и [I] передвигается правый нижний угол текущего окна; ♦ нажав клавишу [Del], можно изменять положение текущего ок¬ на. С помощью стрелок [<-], [-*], [т] и [I] передвигается все окно целиком; ♦ нажав [+] (’’плюс” на функциональной клавиатуре), можно из¬ менять цвет букв и ф°на в текущем окне. Горизонтальные стрелки [«-] и [-*] изменяют цвет букв, вертикальные стрелки [t] и [l] — цвет фона. Для выхода из режима установки параметров окна следует на¬ жать [Enter], Чтобы сохранить установленные параметры окон, надо выполнить команды меню ’’Текст”, ’’Конфигурация”, ’’Сохранить”.
Текстовый редактор Лексикон 77 Макропоследовательности С помощью режима меню ’’Текст”, ’’Макро” можно создавать и редактировать макропоследовательности, связанные с буквенными клавишами. Если для какой- либо буквенной клавиши, например X, задано макроопределение, то нажатие этой клавиши одновременно с клавишей Alt (т.е. нажатие [Alt-X]) будет эквивалентно последовательному нажатию всех клавиш, указанных в макропоследовательности для X. Задание макропоследовательностей. При задании макропоследовательности буквенно-цифровые клавиши указываются в ней непосредственно, а остальные клавиши (функциональные, клавиши [Enter], [Esc], [Backspace], клавиши переме¬ щения курсора и т.д.) - с помощью специальных обозначений. Для ввода этих обозначений следует нажать клавишу [F2], а затем клавишу, обозначение которой надо вставить. Постоянно действующие макропоследовательности. Определения и корректи¬ ровки макропоследовательностей, заданные с помощью режима меню ’’Текст”, ’’Макро” , действуют только в течение текущего сеанса работы с ЛЕКСИКОНом. Для того чтобы задать макропоследовательности, действующие постоянно, следует создать или откорректировать файл KEYMACRO.LEX, который должен находить¬ ся в текущем каталоге или в каталоге, заданном при установке ЛЕКСИКОНа ко¬ мандой MS DOS set ТЕХТ= . Определения макропоследовательностей в файле KEYMACRO.LEX имеют сле¬ дующий вид. Первая строка определения начинается с первой колонки и имеет вид MACRO буква где буква соответствует клавише, для которой задается макроопределение. Следующие строки определения начинаются со второй или следующих пози¬ ций, и в них записывается задаваемая макропоследовательность, причем пробелы в начале и в конце этих строк игнорируются. Например, следующий файл KEYMACRO.LEX удобен для построения таблиц в тексте: MACRO Q Г MACRO W т MACRO Е “I MACRO А F MACRO S MACRO D Н MACRO Z L MACRO X ± MACRO C J MACRO R | {ВНИЗИВЛЕВО} MACRO F Клавиши Q,W,E,A,S,D,Z,X,C,R,F на стандартной клавиатуре расположены так:
78 Глава 8 Q W Е R A S D F Z X C Поэтому легко запомнить, какие символы появятся при нажатии этих клавиш вместе с клавишей Alt Г Т 1 I F + d - L ± J Многие пользователи создают свои, удобные им, макроопределения, напри¬ мер. для ввода типичных конструкций используемого ими языка программирова¬ ния. Установка начальных режимов ЛЕКСИКОНа с помощью макропоследователь¬ ности. Макроопределение, соответствующее букве Ъ из файла KEYMACRO.LEX, имеет особый статус: это макроопределение автоматически выполняется при входе в ЛЕКСИКОН, т.е. оно задает некоторые инициализирующие действия в начале сеанса работы с ЛЕКСИКОНом. Например, следующее макроопределение устанав¬ ливает в начале работы режим ЛЕКСИКОНа ”ЕС 1840”: MACRO Ъ {ФЮ}ТК{КОНЕЦ}{ВЛЕВО}{ВВОД} (Это макроопределение выполняет вход в меню и выбор пунктов ’’Текст”, "Конфигурация”. "ЕС 1840”). В следующих пунктах излагаются дополнительные сведения о ЛЕКСИКОНе. При первом чтении их можно опустить. Переключение с русского на латинский регистр клавиатуры В ЛЕКСИКОНе переключение клавиатуры с режима ввода русских букв на режим ввода латинских букв может осуществляться двумя способами. Какой именно из этих способов применяется, зависит от выбора режима ”1ВМ РС”/”ЕС 1840”. Этот режим устанавливается с помощью меню ’’Текст”, ’’Конфигурация”, "IBM PC” или "ЕС 1840”. По умолчанию действует режим ’’IBM PC”. В режиме "IBM PC” переключение с русского на латинский регистр и обратно осуществляется с помощью клавиши [F9]. В третьем поле информационной строки (слева от даты и времени) изображается: "ЛАТ" - если с клавиатуры вводятся латинские буквы; "РУС" - если с клавиатуры вводятся русские буквы. В режиме "ЕС1840” переключение с русского на латинский регистр клавиату¬ ры и обратно осуществляется: ♦ на компьютерах советского производства — с помощью клавиш ”РУС” и "ЛАТ": ♦ на компьютерах зарубежного производства - с помощью специальной про¬ граммы (драйвера клавиатуры). Различные драйверы клавиатуры используют различные способы для пере¬ ключения с русского регистра на латинский. Например, для этого может использо¬ ваться клавиша [Caps Lock], или одновременное нажатие обеих клавиш [Shift], или одновременное нажатие клавиш [Ctrl] и [Alt]. В режиме ’’ЕС1840” в третьем поле информационной строки изображается
Текстовый редактор Лексикон 79 Если Вы привыкли к переключению клавиатуры с русского на латинский ре¬ гистр с помощью клавиш ”РУС” и ”ЛАТ” (на компьютерах советского производст¬ ва) или к способу переключения используемого Вами драйвера клавиатуры, или если символы, вводимые в русском режиме клавиатуры (когда в информационной строке указано ”РУС”) не соответствуют символам, нарисованным на клавишах вашей клавиатуры, следует переключить ЛЕКСИКОН в режим ’’ЕС1840” с по¬ мощью меню ’’Текст”, ’’Конфигурация”, ’’ЕС1840”. Главное меню ЛЕКСИКОНа Чтобы перейти в главное меню ЛЕКСИКОНа, надо нажать [F1OJ. Главное ме¬ ню ЛЕКСИКОНа имеет следующие пункты: Текст — загрузка, сохранение и печать текстов, задание макроопреде¬ лений и конфигурации ЛЕКСИКОНа. Абзац - - форматирование абзацев текста и выбор соответствующих ре¬ жимов. Фрагмент — выделить, удалить, вставить фрагмент текста. Страницы - разбиение текста на страницы, установка параметров разбие¬ ния на страницы, задание колонтитула, подготовка оглавле¬ ния. Найти - поиск подстроки в тексте. Заменить - поиск и замена подстроки в тексте. Отметить — отметить текущее место в документе, чтобы затем можно бы¬ ло быстро вернуться к. нему с помощью пункта меню ’’Перей¬ ти”. Перейти — перейти к одному из ранее отмеченных мест в тексте или к строке с данным номером Шрифт — установка текущего шрифта (обычный, курсив, полужирный, подчеркнутый и т.д.) пли замена шрифта в выделенном фрагменте текста. ДОС - временный выход в MS DOS, возврат в ЛЕКСИКОН по ко¬ манде Exit. Выход - выход из ЛЕКСИКОНа. Установка ЛЕКСИКОНа на жесткий диск Если компьютер оснащен жестким диском, то желательно переписать ЛЕКСИ¬ КОН на жесткий диск, чтобы он был всегда доступен для работы. Последователь¬ ность установки ЛЕКСИКОНа такова: 1) переписать исполнимый модуль ЛЕКСИКОНа (LEXICON.EXE) в один из каталогов, в котором находятся исполнимые программы общего назначения (т.е. в каталог, указанный в команде MS DOS path); 2) переписать остальные (служебные) файлы ЛЕКСИКОНа в один из катало¬ гов на жестком диске; 3) вставить в командный файл AUTOEXEC.BAT, запускаемый при включении компьютера, команду set texfc-симя каталога, содержащей» служебные файлы ЛЕКСИКОНа например set text.—c:\lexicon
80 Глава 8 Краткая справка по ЛЕКСИКОНу Помощь — [F1] Меню: Вход в меню Передвижение по меню Выбор нужного пункта меню Выход из меню - [F10]. - [-L М, [Home], [End]. - [Enter]. - [Esc]. Передвижение по тексту: м - налево. м — направо. [t] - вверх. [1] — вниз. [Номе] — к 1 симв. в строке. [End] — к последнему символу. [PgUp] — на страницу вверх. [PgDn] — на страницу вниз. [Shift-1] — на начало текста. [Shift-1] — на конец текста. [Ctrl—] — на слово влево. [Ctrl——] — на слово вправо. [Shift—<-] - на начало строки. [Shift-—] - на конец строки. Удаление: [Del] — текущего символа. [Backspace] — предыдущего символа. [F3], [Ctrl—F3] - текущей строки. [Ctrl-F3] - выделенного фрагмента текста. Режимы работы: [Ins] — вставка/удаление при вводе символов. [F9] — русский/латинский шрифт. [Shift—F9] — текстовый/графический режим экрана. [Shift-F10] - режим ”Документ”/”Текст”. ’’Абзац”, ’’Перенос” - режим переноса слов на новую строку. ’’Абзац”, ’’Выключка” — режим выравнивания правого края абзаца. Действия с выделенным участком текста: Начать выделение Выделить нужный фрагмент Отменить выделение Удалить выделенный фрагмент Вставить фрагмент из ’’кармана” Отформатировать как абзац Сдвинуть влево Сдвинуть вправо Строчный фрагмент Блочный фрагмент [F3] [Shift-F3] [ЧШ [F4] [F4] [Ctrl-F3] [Ctrl-F3] [Ctrl—F4] [Shift-F4] [Ctrl—F8] [Ctrl—F5] [Ctrl-F6] Форматирование: [F8] ' — центрировать текущую строку. [Ctrl—F8] — форматировать текст от текущей строки до конца абзаца. Выделить строчный фрагмент и [Ctrl—F8] - форматировать несколько строк в один абзац.
Текстовый редактор Лексикон 81 Настройка границ абзаца: 1 способ. Подвести курсор к первой строке ’’правильного” абзаца и нажать [Shift—F7J. 2 способ. В меню ’’Абзац” установить параметры левой, правой границ аб¬ заца и абзацного отступа. Контекстный поиск и замена: Определить строку для поиска — меню ’’Найти”, для поиска и замены — меню ’’Заменить”. [Ctrl—F1] - найти очередное вхождение строки для поиска. [Ctrl—F2] - заменить найденную строку. [Shift—F2] - глобальная замена. Разбиение на страницы: Вставить границы страниц — меню ’’Страницы”, ’’Расставить”. Убрать границы страниц — меню ’’Страницы”, ’’УбратьСтраницы”. Вставить разделитель страниц - [Shift—F8J. Работа с окнами: [Alt-0] — [Alt—9] — перейти в окно 0 — 9. [Alt—F9] — распахнуть текущее окно на весь экран. Повторное нажатие — вернуться в исходное состояние. ’’Текст”, ’’Конфигурация”, ’’Окно” — изменить размеры, расположение и цвет текущего окна. Шрифты - изменить текущий шрифт или шрифт в выделенном фрагменте: [Alt—F1] — установить шрифт по его номеру: 0 — обычный шрифт; 1 — курсив; 2 — полужирный шрифт; 3 — полужирный курсив. [Alt—F2] — установить/отменить подчеркивание; [Alt—F3] — установить/отменить курсивный шрифт; [Alt—F4] — установить/отменить полужирный шрифт. Глава 9 ТЕКСТОВЫЙ РЕДАКТОР CHIWRITER Редактор ChiWriter является весьма легким для обучения, очень гибким, удобным для подготовки документов с текстом на разных языках, с использованием различных шрифтов, с математическими и химическими формулами и диаграммами. Основные черты редактора ChiWriter: ♦ изображение на экране соответствует тому, что будет напечата¬ но на принтере;
82 Глава 9 ♦ поддерживается 20 шрифтов, что составляет около 2000 симво¬ лов; ♦ поддерживаются все стандартные функции обработки текстов (автоматическое форматирование абзацев, автоматическое раз¬ биение на страницы, различные заголовки страниц, перенос фрагментов из одного места в другое, поиск и замена подстрок и т.д.); ♦ легко рисуются таблицы и диаграммы; ♦ имеется проверка правописания для английских текстов; ♦ редактор удобен для начинающих пользователей (меню, под¬ сказки, помощь); ♦ поддержка большого количества типов мониторов и принтеров (9-точечных и 24-точечных матричных принтеров, лазерных принтеров и др.); ♦ легко создаются новые шрифты, а также производится на¬ стройка на любой тип принтера. С помощью ChiWriter легко пишутся формулы, таблицы и диаг¬ раммы (рис. 9.1). CW-DEMO. CHI Fl: STANDARD FULL: 2/. SYN INS JST SINGL ROW: 7 COL: 67 FAG: 1 i 1 1 1 1 1 1 1 j 1 1 1 1 1 С помощью ChiWriter'а легко пишутся формулы: J CD" г1 = rR 2nrdr rZn*2h" ... | Л| r,w J0 Jz _±h -1 k 1 n 2 n таблицы и диаграммы: J Физическая величина Оператор Координатная форма Энергия «• J)2 2 Момент к i _ h 9 х i 9х л i h 9 ₽У У * *y л ± _ h d V? vz ~ t dz Mark Layout Screen Delete Read Write Print Environ Quit Help spellChk Рис. 9.1. Вид экрана при работе с ChiWriter Для освоения редактора ChiWriter можно сначала прочесть один раз настоящий материал без компьютера и затем один раз с компью¬ тером, пробуя выполнять описываемые действия с редактором. После того как Вы поработаете некоторое время с редактором, Вам будет достаточно иногда смотреть в процессе работы на краткую справку но
Текстовый редактор ChiWriter 83 ChiWriter - The Scientific/Multifont Word Processor. Version 3.11 HORSTMANN SOFTWARE DESIGN CORPORATION,P.О.Box 5039,San Jose,CA 95150 (C) Copyright Horstmann Software Design Corporation 1986..89. All Rights Reserved. Please select one of the following commands: [RJead a document from disk. [Ijmport an ASCII file from disk. [Sjtart a new document. [PJrint a document. [CJhange directory and read document. [QJuit and return to DOS. Enter command: Рис. 9.2. Вид экрана после запуска ChiWriter без указания имени редактируемого файла командам ChiWriter, приведенную в конце главы. При возникновении каких-либо вопросов или проблем следует, разумеется, посмотреть соответствующий раздел в этой главе или в другом описании ChiWriter. Если Вы будете работать с ChiWriter постоянно, то через весьма небольшое время Вам будет не нужна и краткая сводка команд, так как Вы уже будете помнить все нужные команды. Однако после бо¬ лее или менее длительного перерыва в работе эта сводка будет снова Вам полезна. Начало работы с редактором Мы будем предполагать, что программа редактора ChiWriter нахо¬ дится в одном из каталогов, указанных в команде MS DOS Path или в текущем каталоге. Команда запуска ChiWriter. Запуск редактора ChiWriter осущест¬ вляется посредством задания командной строки CW [имя-файла] (здесь квадратные скобки обозначают, что имя файла в команде мож¬ но не указывать). В имени файла можно не указывать расширение .CHI . Например, для редактирования файла PAPER.CHI, находящегося в текущем ка¬ талоге, следует ввести команду cw paper . Если в команде задано имя файла, то ChiWriter в начале работы сразу загрузит указанный файл и Вы сможете его редактировать. Вид экрана при этом будет приблизительно такой же, как на рис. 9.1. Если в командной строке указано имя нового файла (т.е. не имею¬ щегося на диске файла), то ChiWriter будет работать так, как если бы этот файл уже существовал и был пустым.
84 Глава 9 Запуск без указания имени файла. Если командная строка вы¬ глядит: CW т.е. не содержит имени файла, то после загрузки ChiWriter выведет на экран картинку, показанную на рис. 9.2. Вы можете нажать на одну из следующих клавиш: R — считать файл с диска для редактирования; А — загрузить ASCII-файл для редактирования с диска. В этом файле не должно быть русских букв и символов псевдогра¬ фики, так как иначе текст из файла будет считан непра¬ вильно; S — начать редактировать новый документ. ChiWriter спросит имя документа; Р — распечатать нужный документ; С — перейти в другой каталог и считать файл с диска для ре¬ дактирования; Q — закончить работу с ChiWriter и выйти в MS DOS. Для того чтобы начать редактирование нового документа, нажми¬ те клавишу ”S” (при этом Вы выберете пункт меню ’’Start a new document”). ChiWriter спросит имя нового документа. Следует ввести это имя (при этом расширение имени .CHI можно не указывать) и на¬ жать клавишу [Enter]. Если нажать клавишу [Esc], то документ полу¬ чит имя UNTITLED.CHI. Если Вы хотите считать уже существующий документ с диска, то надо нажать не клавишу ”S”, а клавишу ”R” (при этом Вы выберете пункт меню ’’Read a document from disk”). На экран будет выведен список файлов из текущего каталога, имеющих расширение имени .CHI (рис. 9.3). Current Directory = D:\PC-BOOK 6537216 bytes free. ASCII_CW.CHI CW-NEW-S.CHI PARTI .CHI PCI-32 .CHI SCANCOLE.CHI ASC_PRN .CHI CW-NEW-X.CHI PART2 .CHI PCI-41 .CHI WWEDENIE.CHI BACKUP .CHI CW-TUTOR.CHI PCI-1 .CHI PCI-42 .CHI CW-DEMO .CHI CW_COLOR.CHI PCI-2 .CHI PCI-NUM .CHI CW-NEW .CHI DISPLAYS.CHI PCI-31 .CHI PCI-PLAN.CHI Select file or enter name: [.CHI] Рис. 9.3. Выбор файла для редактирования С помощью клавиш перемещения курсора [t], [4], [*-], [-►] надо вы¬ брать нужный файл из списка и нажать клавишу [Enter]. Если в спи¬ ске нет нужного файла, то следует набрать его имя на клавиатуре, при этом расширение .CHI можно не указывать.
Текстовый редактор ChiWriter 85 Сохранение отредактированного документа Для записи на диск сделанных в документе исправлений следует нажать клавиши: [Alt-W] и D. Документ будет сохранен на диске (старый вариант файла с документом получит расширение .ВАК). Если никаких исправлений в документе сделано не было, то ChiWriter выдаст сообщение Document has not been changed — not written (Документ не был изменен — запись не производится) и сохранение документа на диске выполняться не будет. Завершение работы с редактором По окончании редактирования документа нужно записать отре¬ дактированный текст на диск, как это описано выше, поскольку ина¬ че при выходе из редактора сделанные в документе исправления бу¬ дут потеряны. Для окончания работы с редактором нажмите [Alt—Q]. Если Вы не сделали никаких изменений в документе, то произойдет выход из ре¬ дактора. Если были сделаны изменения, которые не были записаны на диск, то появится запрос о том, отказываетесь ли Вы от этих из¬ менений или нет: Abandon current document? (Отменить исправления в тексте ?) Если Вы не хотите сохранить сделанные изменения, то нажмите Y. В противном случае нажмите N, сохраните текст и снова нажмите [Alt-Q]. Переход к редактированию другого документа ChiWriter позволяет после завершения редактирования одного до¬ кумента перейти, не оканчивая работу редактора, к редактированию другого документа. Для этого необходимо сохранить отредактирован¬ ный документ (см. выше) и затем нажать клавиши [Alt—R] и N. ChiWriter выдаст на экран список файлов, имеющих расширение име¬ ни .CHI, из текущего каталога. Можно либо выбрать с помощью клавиш перемещения курсора [t], [1], [<-], [-*] нужный файл и затем нажать клавишу [Enter], либо набрать имя файла на клавиатуре. В последнем случае расширение имени .CHI можно не указывать. Вид экрана при редактировании текста В процессе редактирования текста экран состоит из следующих частей (см. рис. 9.1): ♦ информационной строки (первая строка экрана); ♦ области текста (между информационной строкой и меню); ♦ меню (нижние две строки экрана).
86 Глава 9 Информационная строка Верхняя строка экрана является информационной (рис. 9.4). CW-DEMO.CHI Fl:STANDARD FULL:23% INS JST SINGL ROW:85 COL:16 PAG: 1 I 1 1 1 1 I I I I I I I I I Рис. 9.4. Информационная строка ChiWriter В информационной строке выводятся следующие сведения: ♦ имя текущего файла (CW-DEMO.CHI); ♦ выбранный Вами шрифт (Fl : STANDARD); ♦ индикатор заполнения памяти компьютера (FULL 23%). Этот индикатор показывает, какая часть доступной оперативной па¬ мяти заполнена редактируемым документом и информацией о шрифтах; ♦ режимы редактирования текста: INS — режим вставки; JST — режим выравнивания правой границы абзаца; SYN — режим синхронизации подстрок; DF — режим определения ключевой последовательности (на рис. 9.4 слова DF в информационной строке нет, так как оно присутствует только при определении ключе¬ вой последовательности); ♦ промежуток между строками текста: SINGL — 1 интервал; 11/2 — 1,5 интервала; DOUBLE — 2 интервала; TRIPLE — 3 интервала; ♦ расстояние от начала страницы в рядах (ROW), 1 ряд — 0,5 ин¬ тервала; ♦ номер текущего столбца (COL); ♦ номер текущей страницы (PAG). Область текста Вслед за информационной строкой располагается часть экрана, в которую выводится редактируемый текст. В самой правой колонке экрана выводится одно из следующих изображений: 4J — заштрихованный символ конца строки. Он означает, что в конце этой строки пользователь нажал клавишу [Enter] для оконча¬ ния абзаца и перехода на новую строку; <-1 — незаштрихованный символ конца строки. Он означает, что текст в строке был автоматически перенесен на другую строку ChiWriter. Точки в правой колонке экрана обозначают подуровни строки. Граница между строками изображается в правой колонке экрана горизонтальной черточкой. Меню ChiWriter В нижних двух строках экрана (под областью текста) располагает¬ ся меню (рис. 9.5). С помощью меню можно выполнять различные
Текстовый редактор ChiWriter 87 действия с текстом, устанавливать-параметры работы ChiWriter и т.д. Обращение к командам меню можно выполнять двумя способами. Способ 1. Нажатием клавиши [Esc] высвечивается одна из команд меню. Перемещение к другой команде меню осуществляется с по¬ мощью клавиш перемещения курсора [<-] и [-►]. По мере перемещения по пунктам меню в последней строке экрана будет изображаться объ¬ яснение к текущему пункту меню. Выделив нужный пункт меню, следует нажать клавишу [Enter]. Можно также, не выделяя нужный пункт меню, нажать первую заглавную букву этого пункта меню. Способ 2. Нажимается [Alt] и первая заглавная буква выбранной команды. Nark Layout Screen Delete Read Write ijQO Environ Quit Help spellChk Print the current docuiient or a docunent fron oisk. Рис. 9.5. Меню ChiWriter При выборе команды основного меню, как правило, в нижней ча¬ сти экрана появляются новые команды — подменю, соответствующее выбранному пункту меню. Таким образом, команды меню образуют целое дерево. Полная сводка всех команд меню приведена в конце главы. Если Вы передумали выбирать- какой-либо пункт меню, нажмите клавишу [Esc] для выхода из меню или [t] для возврата на предыду¬ щий уровень меню. Получение подсказки Для получения подсказки (помощи) следует нажать [Alt—Н]. Если Вы редактируете текст, то после нажатия [Alt—Н] появится краткая сводка команд редактора. Если Вы находитесь в меню ChiWriter, то после нажатия [Alt—Н] появится справка о текущем пункте меню. Чтобы получить справку о назначении клавиш в каком-либо шрифте, надо нажать функциональную клавишу, соответствующую этому шрифту (т.е. [Fl]—[F10] или [Shift—Fl]-[Shift-F10]) , и нажать [Alt-H]. Перемещение по тексту Курсор. Белый или черный прямоугольник в тексте, перемещаю¬ щийся при нажатии клавиш [т], [4], [*-], [->], называется курсором. Так, на рис. 9.1 курсор находится после первой формулы. Курсор указывает на текущую позицию в тексте. Все изменения и вставки нового текста происходят в той позиции, на которую показы¬ вает курсор. Перемещение курсора по тексту. Для перемещения по тексту ис¬ пользуются клавиши управления курсором: ♦ перемещение курсора на одну позицию в соответствующем на- правлении - [t], [I], [<-], [-];
88 Глава 9 ♦ перемещение по тексту на экран вниз или вверх — [PgUp] и [PgDn]; ♦ перемещение на начало или на конец редактируемого текста — [Ctrl—Ноше] и [Ctrl—End]; ♦ перемещение курсора на начало или на конец текущей стро¬ ки — [Ноте] и [End]. Курсор останавливается у первой буквы после последней буквы текущей строки. Переход к странице с данным номером. ChiWriter позволяет быс¬ тро перейти к странице с данным номером. Для этого следует нажать комбинацию клавиш [Ctrl-G]. На подсказку Goto page ... надо ввести номер нужной строки и нажать клавишу [Enter]. Ввод текста Для ввода текста нужно переместить курсор в то место, в которое надо вводить новый текст, и начать набор текста, нажимая соответст¬ вующие буквенно-цифровые клавиши. Вводимые символы помещают¬ ся в ту позицию, в которой находится курсор. Ввод символов из верхнего регистра клавиатуры. Если необходи¬ мо ввести символ из верхнего регистра клавиатуры (например, про¬ писную букву), то необходимо нажать клавишу [Shift] и, не отпуская ее, нажать клавишу с нужным символом. Переключение на ввод символов из другого алфавита. Если Вы хотите перейти от ввода русских букв к вводу латинских букв или наоборот, необходимо переключиться на другой шрифт. Для этого следует два раза подряд нажать функциональную клавишу соответст¬ вующего шрифта (например, [F1] для латинского шрифта, [F2] для русского шрифта). Как начать новый абзац. При наборе текста не нужно каждый раз нажимать клавишу [Enter] для перехода на новую строку. По¬ следнее слово строки будет при необходимости автоматически пере¬ носиться редактором на новую строку. Клавишу [Enter] следует на¬ жимать только в конце абзаца. При этом курсор переходит на новую строку и устанавливается в позицию левого края текста. Для того чтобы начать абзац с красной строки, следует в начале абзаца нажать клавишу табуляции [Tab]. Ввод текста в режиме вставки и в режиме замены. При вводе но¬ вого текста ChiWriter может по-разному поступать с теми символами, которые находятся справа от курсора. В режиме вставки эти симво¬ лы сдвигаются вправо, и новый текст вставляется между уже имею¬ щимися символами, не стирая их. Если режим вставки выключен, то новые символы вводятся вместо старых, ’’заменяя” их. Включение и выключение режима вставки осуществляются с помощью клавиши [Ins]. О наличии режима вставки можно узнать по символам ”INS” в информационной строке экрана. Если символов ”INS” в информаци¬ онной строке экрана нет, то действует режим замены. Выравнивание правой границы абзаца при вводе текста. Если включен режим выравнивания правого края абзаца (в информацион¬
Текстовый редактор ChiWriter 89 ной строке имеются символы ”JST”), то при вводе нового текста про¬ исходит выравнивание правого края абзаца с помощью вставки до¬ полнительных пустых промежутков между словами. Эти промежутки отличаются от пробелов, вводимых пользователем, тем, что при изо¬ бражении пробела на экране в середине выводится маленькая точка. При форматировании абзаца (см. ниже) пустые промежутки могут быть удалены, а пробелы — нет. Режим выравнивания правого края абзаца включается и выключа¬ ется с помощью нажатия клавиш [Orl—dl. Корректировка текста Стирание символа. Чтобы стереть лишний или неправильный символ, надо подвести к нему курсор и нажать клавишу [Del]. Клавиша [Backspace] (стрелка налево над клавишей [Enter]) уда¬ ляет символ, находящийся слева от курсора. Разбиение строки на две. Чтобы разбить строку на две, необходимо подвести курсор к тому месту, где надо разделить стро¬ ку, и нажать клавишу [Enter]. Соединение двух строк. Чтобы соединить две строки, надо поме¬ стить курсор в самую правую позицию экрана в первой из этих строк и нажать клавишу [Del]. Удаление строки. Чтобы удалить строку, поместите в нее курсор и нажмите [Ctrl—Backspace]. Форматирование текста Центрирование строки. Для центрирования строки (размещения ее посередине между левой и правой границами текста) надо устано¬ вить курсор в эту строку и нажать [Ctrl—С]. Прижатие строки к правой границе текста. Для того чтобы вы¬ ровнять строку по правому краю, т.е. прижать ее к правой границе текста, надо установить курсор в эту строку и нажать [Ctrl—М]. Форматирование абзаца. ChiWriter считает абзацем участок тек¬ ста, заканчивающийся при нажатии клавиши [Enter] для перехода на новую строку. На экране конец абзаца изображается заштрихован¬ ным символом конца строки в самой правой колонке экрана. ChiWriter позволяет выполнять форматирование текста, т.е. ’’пра¬ вильно” располагать текст абзацев между заданными левой и правой границами текста. Если включен режим выравнивания правого края абзаца (в информационной строке имеются символы ”JST”), то произ¬ водится также выравнивание правого края абзаца с помощью вставки дополнительных пустых промежутков между словами. Для форматирования текста надо переместить курсор на то место, начиная с которого надо выполнить форматирование, и нажать [Ctrl—F]. Текст до конца абзаца будет отформатирован. Для формати¬ рования всего абзаца следует поместить курсор на начало первой строки абзаца и нажать [Ctrl—F].
90 Глава 9 Переносы слов при форматировании текста. Начиная с версии 3.10 редактора ChiWriter, пои форматировании текста можно переносить части слов на новую строку. Для этого необходимо выбрать в меню пункты ’’Layout” и ’’hYphen” (т.е. нажать [Alt—L] У) и ввести число пробелов в строке, при превышении которого будут производиться переносы. Чтобы включить режим переноса частей- слов на новую строку, надо присвоить этому параметру значение 4 или 5, чтобы выключить, значение 9999. Если режим переноса частей слов на новую строку включен и при форматировании текста какое-либо слово не помещается в строке, то ChiWriter предлагает указать место, где это слово можно перенести на новую строку. Выводится сообщение Use [Left] and [Right] cursor keys to position the hyphen (Укажите с помощью клавиш [<-] и [-►] место переноса) Указав место переноса, следует нажать [Enter] или Если слово надо переносить на новую строку целиком, следует нажать [Esc]. Установка границ текста. Чтобы установить левую границу тек¬ ста, надо переместить курсор в ту позицию, где должна быть левая граница текста, и нажать ’’Ctrl—[”. Чтобы установить правую границу текста, надо переместить кур¬ сор в ту позицию, где должна быть правая граница текста, и нажать ’’Ctrl-]”. Работа с фрагментами текста Часто требуется выполнить некоторые действия с фрагментом текста, например удалить его, переместить в другое место документа, изменить шрифт в фрагменте текста и т.д. Для этого следует сначала выделить нужный фрагмент текста, а затем указать, какие действия необходимо с ним сделать. Для выделения фрагмента текста переместите курсор на начало этого фрагмента и нажмите [Alt—М]. Затем передвиньте курсор на ко¬ нец нужного фрагмента текста, при этом на экране будет выделен весь текст от того места, где были нажаты клавиши [Alt—М], и до по¬ зиции курсора. Заметим, что команды меню в нижней части экрана изменятся. Появившиеся новые команды меню предоставляют следу¬ ющие возможности. [Alt—Е] — (End) — отменить выделение. [Alt-C] — (Cut) — удалить выделенный фрагмент текста. Удален¬ ный фрагмент будет помещен в буфер. Если нужно вставить содержи¬ мое буфера куда-нибудь в текст, то надо переместить курсор в то мес¬ то, куда должен быть вставлен текст из буфера, и нажать [Ctrl-P]. [Alt—D] — (Duplicate) — скопировать кусок текста. Выделенный фрагмент текста будет скопирован в буфер. Если нужно вставить со¬ держимое буфера куда-нибудь в текст, надо переместить курсор в то место, куда должно быть вставлено содержимое буфера, и нажать [Ctrl-P]. [Alt—F] — (Font change) — изменить шрифт в выделенном фрагмен¬ те текста. Следует нажать функциональную клавишу заменяемого
Текстовый редактор ChiWriter 91 шрифта или [Enter] для замены всех шрифтов и потом функциональ¬ ную клавишу заменяющего шрифта. [Alt-S] — (Space change) - изменить межстрочный промежуток в выделенном куске текста. Можно выбрать: Single — 1 интервал; One and half — 1,5 интервала; Double — 2 интервала; Triple — 3 интервала. [Alt—R] — (Reformat) — переформатировать выделенный кусок текста. Можно выбрать: Keep current paragraphs — сохранить имеющиеся границы аб¬ зацев; Format as one paragraphs — форматировать как один абзац. [Alt—А] — (cAse) — заменить в тексте все буквы на прописные или строчные (работает правильно только для английских текстов). [Alt—W] — (Write) — записать выделенный участок в файл. Имя файла будет запрошено. [Alt-P] — (Print) - напечатать выделенный участок текста. При печати используются режимы, установленные в пункте основного ме¬ ню ’’Print”. Использование различных шрифтов Редактор предоставляет пользователю возможность использовать 20 различных шрифтов. Первые десять шрифтов устанавливаются при нажатии функциональных клавиш [F1J-F10], остальные десять — при нажатии [Shift—Fl]—[Shift-FlOJ. В информационной строке экрана сообщается имя текущего шрифта, а также имя соответствующей функциональной клавиши (например, F1:STANDARD). При этом для краткости вместо названий клавиш [Shift—Fl] - [Shift-F10] выводится Fll - F20. Изменение шрифта набираемых символов. Если нажать на функ¬ циональную клавишу, соответствующую шрифту, один раз, то только один следующий символ будет восприниматься в выбранном шрифте, а остальные символы будут вводиться по-прежнему в старом шрифте (это удобно при наборе математических текстов). Если же нажать функциональную клавишу шрифта два раза подряд, то все следую¬ щие символы будут набираться в новом шрифте. Набор шрифтов, используемых ChiWriter. Комплект шрифтов, используемых ChiWriter (рис. 9.6), может меняться пользователем в зависимости от его потребностей. Приведем один из распространен¬ ных наборов шрифтов, указывая также соответствующие функцио¬ нальные клавиши: Fl — STANDARD — стандартный латинский шрифт; F2 - RUSS - русский шрифт; F3 — UNDERLIN — подчеркнутый латинский шрифт; F4 — RUSSUNDR - подчеркнутый русский шрифт; F5 — ORATOR — латинский шрифт для заголовков; F6 — RUSSORAT — русский шрифт для заголовков; F7 — LINEDRAW — рисование линий и таблиц; F8 — SMALL — уменьшенный латинский шрифт;
92 Глава 9 F9 - MATHI - математические символы; F10 — МАТНИ — математические символы; Shift—Fl - BOLD — полужирный латинский шрифт; Shift—F2 — RUSSBOLD - полужирный русский шрифт; Shift-F3 - ITALIC - наклонный латинский шрифт; Shift-F4 - RUSSITAL - наклонный русский шрифт; Shift-F5 - GREEK — греческий шрифт; Shift-F6 - SMALLGR - уменьшенный греческий шрифт; Shift-F7 - SCRIPT - рукописный латинский шрифт; Shift-F8 - GOTHIC - готический шрифт; Shift—F9 - SYMBOL - шрифт с различными символами; Shift-FlO - FOREIGN - буквы из национальных алфавитов. Fl - STANDARD - А а 5 ? = Shift-Fl - BOLD - А а 5 ? = F2 - RUSS - Б б У Ц я Shift-Гг - RUSSBOLD - Б 6 У Щ я F3 - UNDERLIN - А а 5 ? = Shift-ГЗ - ITALIC - 4 а 5 ? = F4 - RUSSUNDR - Б б У Щ я Shift-F4 - RUSSITAL - Б б У Ц я FS - ORATOR - Д А 5 ? = Shifl-rS - GREEK - « В Г А ф Гб - RUSSORAT ~ Б Б У HI Я Shift-Гб - SMALLGR - ct о г а ф F7 - LINEDRAW - т -> 1 ц X; ShifL-F7 - SCRIPT - X а И £ Гб - SMALL - А а 5 ? = Shift-F8 - GOTHIC - « а В R £ Г9 - MATHI - s J < Ф Е Shift-ГЭ - SYMBOL - I ® £ * t ПО - МАТНИ - | R J U Л Shift-ГЮ - FOREIGN - 3 1 a A « Рис. 9.6. Образец шрифтов редактора ChiWriter В исходной версии ChiWriter имеются следующие шрифты: Standard, Bold, Italic, Underlin, Script, Gothic, Small, Orator, Linedraw, Foreign, Symbol, MathI и MathIL Кроме того, в ней имеют¬ ся шрифты для рисования химических формул (Chemi, Chem2, Chem3 и Chemlett). Шрифты Russ, Russbold, Russundr, Russital, Russorat и SmallGr были добавлены пользователями в СССР. Поскольку ChiWriter позволяет легко создавать собственные шрифты, то многими пользователями были созданы свои, нравящие¬ ся им наборы шрифтов. Так, широкое распространение получил на¬ бор шрифтов, разработанный на ВЦ АН СССР. Вывод информации о наборе шрифтов • Чтобы посмотреть список шрифтов, т.е. узнать, какой клавише соответствует тот или иной шрифт, надо нажать [Alt—Е], затем F и L. ChiWriter выведет на экран список имен шрифтов с указанием соот¬ ветствующих функциональных клавиш (рис. 9.7).
Текстовый редактор Chi Writer 93 [F1] STANDARD [Shift-Fl] BOLD [F2] RUSS [Shift-F2] RUSSBOLD [F3] UNDERLIN [Shift-F3] ITALIC [F4] RUSSUNDR [Shift-F4] RUSSITAL [F5] ORATOR [Shift-F5] GREEK [F6] RUSSORAT [Shift-F6] SMALLGR [F7] LINEDRAW [Shift-F7] SCRIPT [F8] SMALL [Shift-F8] GOTHIC [F9] MATH I [Shift-F9] . SYMBOL [F10] MATHII [Shift-FlO] FOREIGN Hit any key to continue... Рис. 9.7. Список имен шрифтов, выводимый ChiWriter Вывод информации о символах шрифта Для большинства шрифтов расположение символов на клавиатуре достаточно понятно, например полужирная буква W (в шрифте Bold) соответствует клавише ”W”. Однако в некоторых шрифтах располо¬ жение символов не столь очевидно. Чтобы узнать расположение всех символов заданного шрифта на клавиатуре, надо нажать клавишу этого шрифта и затем [Alt—Н]. ChiWriter выведет на экран располо¬ жение символов данного.шрифта на клавиатуре. На выведенном рисунке на каждой клавише будут слева изобра¬ жены символы, нарисованные на этой клавише (т.е. символы, полу¬ чаемые при нажатии на эту клавишу в латинском регистре клавиату¬ ры), а справа — символы, соответствующие клавише в данном шриф¬ те (снизу — без нажатия клавиши [Shift], а сверху — с нажатием кла¬ виши [Shift]) (рис. 9.8). F10 МАТНИ FT * r * 1 z - « ( * 1 < ( > > - + 2 1 з I 4 J 5 г 6 n 7 I 8 J 9 I 0 ) - ’ - 0 ® u и E E R R T T Y V и u i i 0 © F p < { > } II L У A U L II JL c A A S S D D F Г G € H H J J к к L L •• II - s. JL 11 J —ф j ' I ! 1 z z X X c c V V в в N N H IM < > ? 1 \ \ iL —1 11 1 . L± Hit another font key, a character key or CEscL.. Рис. 9.8. Рисунок соответствия символов шрифта клавишам клавиатуры
94 Глава 9 Посмотрев на выведенную картинку, Вы можете: ♦ нажав клавишу с тем или иным символом, вставить в текст этот символ в показанном на экране шрифте и вернуться к ре¬ дактированию документа; ♦ нажав функциональную клавишу [Fl] — [F10] или [Shift—Fl]-[Shift—F10], посмотреть на рисунок соответствия клавишам клавиатуры символов какого-то другого шрифта; ♦ нажав [Esc], вернуться к редактированию документа. Поиск и замена символов и подстрок С помощью ChiWriter можно легко выполнить следующие дейст¬ вия: ♦ найти в редактируемом документе любой символ или последо¬ вательность символов (подстроку); ❖ заменить любую подстроку на другую с запросом подтвержде¬ ния пользователя на каждую замену или без такого запроса. Поиск символа. Для начала поиска символа следует нажать одну из клавиш: [+] — (плюс на функциональной части клавиатуры) — поиск сим¬ вола вперед по тексту, т.е. от текущего положения курсо¬ ра до конца текста; [—] — (минус на функциональной части клавиатуры) — поиск символа назад по тексту, т.е. от текущего положения кур¬ сора до начала текста. После этого можно нажать одну из следующих клавиш: Любой символ — поиск этого символа в текущем шрифте. Функциональную клавишу и символ — поиск символа в шриф¬ те, соответствующем данной функциональной клавише. [Enter] — поиск конца абзаца. [PgUp] или [PgDn] — поиск конца страницы. [Ctrl—N] — поиск сноски. Если поиск будет успешен, то курсор остановится на найденном символе, иначе — останется на месте. Для повторения поиска того же символа следует нажать: [+И+] — повтор поиска символа вперед по тексту; [—][—] — повтор поиска символа назад по тексту. Примеры [+]а [-][Shift-F3]b — переместить курсор на следующий символ а в тексте; — переместить курсор на предыдущий символ b шрифта, [+][Enter] [-][PgUp] соответствующего [Shift-F3J; - переместить курсор на конец текущего абзаца текста; - переместить курсор на начало текущей страницы текста. Поиск подстроки. Для поиска подстроки в редактируемом доку¬ менте следует нажать [Ctrl—S]. В нижней части экрана появится над¬ пись, запрашивающая, что надо искать Enter search pattern (Введите образец для поиска)
Текстовый редактор ChiWriter 95 THESIS.CHI Fl:STANDARD FULL: 2Z SYN INS JST SINGL ROW: 23 COL: 3 FAG: 1 i 1 1 i i i 1 1— 6.Tests for two-sanple scale problen i i i i i i 7.Two-way ANOVA(uniYariate) 8.Two-way ANOVA(naltivariate) 3 9.Rank tests and estinates in the linear Models and 3 independence testing 3 10. Test of randonness against trend or serial correlations J 11. test inference 3h 12. ResHictecL al ter natives 3 13. Adaptive Methods 3 14. Sequential Methods 3 15. Density estiMation 3 16.Censored data 3 17.Order statistics, et al 13-81. 3 No Global Cancel Replace highlighted text? Рис. 9.9. Замена подстроки Введите подстроку, которую надо найти, и нажмите [Enter]. Мож¬ но также нажать [Esc], если Вы передумали осуществлять поиск. Поиск будет вестись с текущей позиции в тексте до конца текста. В синхронном режиме (SYN в информационной строке) поиск ведется только по основным уровням строк, в асинхронном режиме поиск осуществляется также и во всех надуровнях и подуровнях строк. Если заданная подстрока будет найдена, то курсор покажет ее в тексте. В противном случае курсор останется на прежнем месте. Следует отметить, что при поиске учитывается шрифт, которым были набраны символы. Например, если искать подстроку ААА, на¬ бранную обычным шрифтом, то подстрока ААА, набранная курсивом, найдена уже не будет. Поиск и замена подстроки. Для поиска подстроки в редактируе¬ мом документе и замены ее на другую подстроку следует нажать [Ctrl—R]. В нижней части экрана появится надпись, запрашивающая, что надо искать Enter search pattern (Введите образец для поиска)
96 Глава 9 Введите подстроку, которую надо найти, и нажмите [Enter]. В нижней части экрана появится надпись с запросом о заменяющей подстроке Enter replacement text (Введите заменяющую подстроку) Надо ввести заменяющую подстроку и нажать [Enter]. После это¬ го начнется поиск исходной подстроки, как это описано выше. Если исходная подстрока не будет найдена, то курсор останется на прежнем месте. В противном случае ChiWriter выделит найденную подстроку (рис. 9.9.) и спросит: Replace highlighted text ? (Заменить выделенный текст ?) Вы можете выбрать: Yes — заменить выделенную подстроку и продолжить по¬ иск; No — не заменять выделенную подстроку и продолжить поиск; Global — заменить выделенную подстроку и все другие вхож¬ дения исходной подстроки до конца текста; Cancel — не заменять выделенную подстроку и окончить по¬ иск. Повторение поиска или замены подстроки. Чтобы повторить по¬ следнюю команду поиска или замены подстроки, следует нажать [Ctrl—L]. Если последней из команд поиска или замены была команда по¬ иска подстроки, при нажатии [Ctrl—L] будет выполнен поиск той же подстроки от текущего положения курсора до конца текста. Если же последней из команд поиска или замены была команда замены под¬ строки, при нажатии [Ctrl—L] будет выполнена команда замены с те¬ ми же значениями исходной и заменяющей подстрок. Расположение текста на нескольких уровнях строки Надуровни и подуровни строки. Каждая строка в ChiWriter мо¬ жет иметь несколько надуровней и подуровней. Символы текста мо¬ гут располагаться не только на основном уровне в строке, но и на лю¬ бом надуровне или подуровне. Как правило, текст располагается в строках на основном уровне, а на подуровнях и надуровнях распола¬ гаются верхние и нижние индексы, а также номера сносок. Расстояние между уровнями — 1 ряд = 0,5 интервала. При наборе формул, таблиц и диаграмм обычно добавляют столь¬ ко надуровней и подуровней, сколько необходимо для размещения формулы, таблицы или диаграммы, и располагают на них соответст¬ вующий текст.
Текстовый редактор ChiWriter 97 несколько наду₽овней Строка может иметь |<1<1 подуровней. Рис. 9.10. Надуровни и подуровни в строке В правой колонке экрана надуровни и подуровни строк изобража¬ ются точками, а граница между строками — горизонтальной черточ¬ кой. Синхронный и асинхронный режимы редактирования. Клавиша [*] (звездочка на функциональной части клавиатуры) включает и от¬ ключает асинхронный режим, который позволяет редактировать каж¬ дый уровень строки независимо от других уровней. О наличии режи¬ ма синхронизации уровней указывает надпись SYN в первой строке экрана. Кроме того, в асинхронном режиме размер курсора становит¬ ся меньше — 1 уровень, в синхронном режиме его высота — 2 уровня. В синхронном режиме вставка и удаление символов осуществляются по всему столбцу строки, на которую указывает кур¬ сор, в асинхронном режиме — только в том уровне, на который ука¬ зывает курсор. Переход на другой уровень в строке. В асинхронном режиме пе¬ реход па один уровень выше или ниже осуществляется клавишами перемещения курсора [t] и [4]. Клавиши [PgUp] и [PgDn] в этом ре¬ жиме перемещают курсор на одну строку текста вверх или вниз. В синхронном режиме перейти на уровень выше или ниже (в пре¬ делах одной строки) можно с помощью клавиш [Ctrl—PgUp] и [Ctrl—PgDn]. Когда курсор находится на верхнем или на нижнем уровнях строки, то [Ctrl—PgUp] и [Ctrl—PgDn] добавляют новый (пус¬ той) надуровень или подуровень в текущей строке. Вставка и удаление уровней строки. Для удаления уровня в стро¬ ке следует перейти в асинхронный режим, перевести курсор на уда¬ ляемый уровень и нажать [Ctrl—Z]. Заметим, что основной уровень строки удалить нельзя. Для вставки уровня в строке следует перейти в асинхронный режим, перевести курсор на уровень, ниже которого надо вставить новый уровень, и нажать [Ctrl—А]. Кроме того, доба¬ вить новый уровень в верху или в низу строки можно с помощью клавиш [Ctrl—PgUp] и [Ctrl-PgDn], как это описано выше. Если Вы хотите написать формулу или таблицу, то Вам понадо¬ бится несколько подуровней и надуровней. При написании сложной формулы или таблицы удобно сначала создать большое число под¬ уровней и надуровней, а затем ненужные уровни уничтожить с по¬ мощью [Ctrl—Z]. Для удаления пустых уровней в верху и в низу строки можно вос¬ пользоваться следующим приемом. В синхронном режиме следует выделить всю строку, а затем нажать [Alt—S] и S (т.е. выбрать пунк¬ ты меню Spacing — изменение расстояния между строками и Single — 1 интервал). Пустые уровни в верху и в низу строки будут удалены. 4 Фигурнов В. Э.
98 Глава 9 Вставка и удаление фрагмента текста в асинхронном режиме. Если выделение участка текста происходит в асинхронном режиме, высвечивается не весь участок текста от начального до конечного по¬ ложения курсора, а прямоугольная область, границы которой задают¬ ся начальным и конечным положениями курсора. Это позволяет исп¬ равлять только отдельные куски в формулах и диаграммах. Вставка текста из буфера в асинхронном режиме несколько отли¬ чается от вставки в синхронном режиме. В асинхроцном режиме по¬ сле нажатия [Ctrl—Р] вставленная область высвечивается на экране и с помощью клавиш перемещения курсора ее можно поместить в нуж¬ ное место. После этого следует нажать [Enter] для фиксирования тек¬ ста в этом месте или [Esc] для отмены копирования. Такой способ весьма облегчает перемещение участков формул и таблиц из одного места в другое. Рисование линий, таблиц и диаграмм В редакторе ChiWriter имеется специальный шрифт LINEDRAW, содержащий символы, необходимые при рисовании линий, таблиц и диаграмм. Однако непосредственно вводить нужные символы этого шрифта довольно утомительно. ChiWriter предоставляет средства для более быстрого и удобного рисования линий и таблиц. Эта возмож¬ ность обеспечивается версией ChiWriter 3.0 и последующими. В один прием можно нарисовать линию или прямоугольник. Сна¬ чала следует подвести курсор к тому месту, где должен быть конец линии или угол прямоугольника, и нажать [Ctrl—X]. Рисование осу¬ ществляется с помощью клавиш перемещения курсора [t], [i], [<-] и [-►]. Если перемещать курсор в одном направлении, будет рисоваться линия, а если сначала в одном направлении, а затем в перпендику¬ лярном ему направлении — будет рисоваться прямоугольник. В про¬ цессе рисования можно использовать следующие клавиши: (минус) - изменяет тип рисуемой линии. Нажимая ” не¬ сколько раз, можно выбрать рисование сплошных, пунктирных, жир¬ ных и двойных линий; > — (знак больше) — рисует или удаляет стрелки на конце ли¬ ний. Нарисовав нужную линию или прямоугольник, надо нажать одну из следующих клавиш: [Enter] — внести в документ нарисованную линию или прямо¬ угольник; [Esc] — отменить нарисованную линию или прямоугольник. Рисование более сложных фигур выполняется с помощью рисова¬ ния линий и прямоугольников, из которых эти фигуры состоят. ChiWriter правильно обрабатывает пересечения и стыки рисуемых ли¬ ний. Например, пересечение линий = и | будет выглядеть: =|= . Печать документов Начало печати. Для того чтобы начать печать текста, надо войти в меню ’’Print” и выбрать режим ”Go”. Однако перед тем, как это еде-
Текстовый редактор ChiWriter 99 лать, следует установить желаемое качество и режимы печати (см. далее). Если печать производится первый раз, то ChiWriter читает файл описания принтера и те шрифты, которые выводятся в графическом режиме принтера. Если установлен режим печати без остановок пе¬ ред печатью каждой страницы, сразу же после этого начнется печать текста. Если установлен режим печати с остановками перед печатью каждой страницы, на экран выводится сообщение *** INSERT PAPER *** Hit any key when ready (Вставьте бумагу и нажмите любую клавишу) Следует убедиться, что принтер готов к печати, и нажать любую клавишу, например пробел или [Enter]. Сообщение ’’INSERT PAPER” будет выводиться перед началом печати каждой страницы. Остановка печати. Во время распечатки текста можно в любой момент остановить печать, для этого следует один раз нажать клави¬ шу [Esc]. ChiWriter приостановит печать и выведет сообщение *** print INTERRUPTED *** Continue ? (Y/N) (Печать прервана. Продолжить? Y — да, N — нет) Если Вы хотите продолжить печать текста, нажмите ”У”, иначе - нажмите ”N” или [Esc]. Следует заметить, что после нажатия клавиши [Esc] для останов¬ ки печати текста ChiWriter прекратит посылать печатаемые символы на принтер, однако принтер будет продолжать печатать те символы, которые он воспринял ранее. Поэтому печать текста прекратится только тогда, когда принтер напечатает все содержимое своего буфе¬ ра для хранения печатаемого текста. Особые случаи при печати. При ошибках на печатающем устрой¬ стве ChiWriter приостановит печать и выдаст сообщение, например *** ERROR *** Printer off-line. Retry? (Y/N) (Ошибка при печати. Принтер в состоянии ’’Off-line”. Повторить ? Y — да, N — нет) или *** ERROR *** Printer out of paper. Retry? (Y/N) (Ошибка при печати. Конец бумаги на принтере. Повторить ? Y — да, N — нет) Если Вы хотите продолжить печать с того места, где она была приостановлена, нажмите ”Y”, иначе — нажмите ”N” или [Esc]. При печати больших документов иногда ChiWriter выдает сообще¬ ние Not enough memory to print (Недостаточно памяти для печати) В одних случаях после выдачи такого сообщения можно нажать [Esc] и вернуться к редактированию документа, а в других случаях ChiWriter не реагирует на нажатие клавиш и машина ’’зависает”, т.е. 4*
100 Глава 9 необходимо перезагрузить PftS DOS. В связи с этим рекомендуется пе¬ ред печатью документов (особенно документов большого размера) со¬ хранять сделанные изменения на диск. Выбор режимов печати. С помощью подпункта ’’Options” пункта меню ’’Print” можно установить режимы печати: какие страницы тек¬ ста надо печатать, делать ли паузы между печатью отдельных стра¬ ниц, какую надо установить ширину левого поля страницы и т.д. В подпункте ’’Options” можно установить следующие режимы. From/to page — выбор диапазона печатаемых страниц. ChiWriter предложит ответить на следующие вопросы: From page — с какой страницы начать печать; То page - до какой страницы печатать; All Odd Even — печатать либо все страницы, либо только нечетные, либо только четные. Stop between pages - следует ли делать паузы между печатью отдельных стра¬ ниц (Yes - да, No — нет). При печати на рулонной бумаге или на принтере с авто¬ матической подачей листов бумаги следует установить этот режим в ”No”, в про¬ тивном случае — в ”Yes”. По умолчанию этот режим имеет значение ”No” — не де¬ лать пауз. Если Вы, как правило, печатаете на отдельных листах бумаги, то целе¬ сообразно в ключевой последовательности с именем AUTOEXEC, выполняемой в начале работы ChiWriter, установить значение этого режима ”Yes” (см. ниже). Margin offset — выбрать ширину левого поля при печати (в колонках). Copies — выбрать количество копий при печати. Выбор шрифта для печати. Выбор шрифта для печати осуществ¬ ляется с помощью подпунктов ’’Quality” и ’’Pitch” пункта меню ’’Print”. С помощью подпункта "Quality” пункта меню ’’Print” можно выбрать желае¬ мое качество печати: Draft - черновая печать; Letter quality - качественная печать; Special — специальный режим (чаще всего - качество, промежуточное между ’’Draft” и ’’Letter quality”). С помощью подпункта ’’Pitch” пункта меню ’’Print” можно выбрать ширину шрифта для печати: Pica — 10 символов на дюйм (как на пишущей машинке); Elite — 12 символов на дюйм; Proportional — ширина каждого символа соответствует фактической ши¬ рине его изображения (узкие символы занимают меньше места, широкие — больше). Замечание. Значения режимов ’’Quality” и ’’Pitch” могут быть и други¬ ми, если так задано в файле определения принтера. Нумерация страниц и сносок. С помощью подпункта ’’Numbering” пункта меню ’’Print” можно устанавливать порядок нумерации стра¬ ниц и сносок: first Page number — установка номера первой страницы фай¬ ла; first footNote number — установка номера первой сноски в файле. Шрифты, которыми печатаются номера страниц, можно устано¬ вить с помощью меню: ’’Layout”, ’’Pagination”, ’’Font to page numbers” ([Alt-L] P F). Для выбора шрифта нужно нажать на соот¬ ветствующую ему функциональную клавишу. Если нажать клавишу [Enter], то номера страниц печататься не будут.
• Текстовый редактор ChiWriter 101 Замечание. Чтобы при печати страниц выводились их номера, необхо¬ димо определить верхний или нижний заголовок страницы (колонтитул), в тексте которого содержится номер текущей страницы (колонцифра). См. по э^ому поводу п. ’’Заголовки страниц”. Шрифты, которыми печатаются номера сносок, можно установить с помощью меню: ’’Layout”, ”footNotes”, "Font to footnote numbers” ([Alt—L] N F). Для выбора шрифта нужно нажать на соответствую¬ щую ему функциональную клавишу. Если нажать клавишу [Enter], то номера сносок печататься не будут. Направление печати в файл. С помощью подпункта ”То file” пункта меню ’’Print” можно направить печать в файл. Это означает, что, когда в следующий раз будет выбран подпункт ”Go” пункта меню ’’Print”, то коды, подготовленные для принтера, будут посылаться не на принтер, а в файл. В этом файле будут со¬ держаться управляющие коды принтера, печатаемые символы и графическая ин¬ формация (для тех шрифтов, которые печатаются в графическом режиме принте¬ ра). При выборе подпункта ”То file” пункта меню ’’Print” ChiWriter выведет на эк¬ ран список всех файдов с расширением .BIN из текущего каталога. Вы можете с помощью клавиш перемещения курсора выделить имя файла, в который хотите записать подготовленные для печати коды, и нажать [Enter] (старое содержимое этого файла сотрется!). Можно также набрать имя файла на клавиатуре, при этом в имени файла можно опустить расширение .BIN . Следует заметить, что если Вы еще раз захотите направить печать в файл, на¬ до будет снова выбрать в подпункте ”То file” пункта меню ’’Print” тот файл, в ко¬ торый будет производиться печать. Если этого не сделать, печать будет выводиться на принтер. Использование печати в файл позволяет, например, подготовить файл для пе¬ чати на одном компьютере (на котором нет нужного принтера), перенести этот файл на другой компьютер и распечатать его на этом компьютере. Для распечатки может использоваться команда сору /Ь имя-файла ргп Настройка на тип печатающего устройства. С помощью подпунк¬ та "Change printer” пункта меню "Print” можно выполнить настройку на тип печатающего устройства. ChiWriter выведет на экран список всех файлов описаний принтеров (файлов с расширением .PRN или драйверов принтеров) из каталога, в котором находятся файлы ChiWriter. Вы можете с помощью клавиш перемещения курсора вы¬ делить имя нужного описания принтера и нажать [Enter]. Можно также набрать имя файла описания принтера на клавиатуре, при этом в имени файла можно опустить расширение .PRN . Разделение текста на страницы ChiWriter автоматически разбивает редактируемый текст на стра¬ ницы. Граница раздела страниц изображается горизонтальной пунк¬ тирной чертой, пересекающей весь экран. Установка длины страницы. Длину страницы можно задать с по¬ мощью команд меню "Layout”, "Pagination”, "Paper length” ([Alt—L] P P). Длина рабочего поля задается в рядах (1 ряд - 1/2 интервала). Обычная длина — 100—110 рядов, что соответствует 50—55 строкам через один интервал на странице.
102 Глава 9 Принудительное начало страницы. В тексте документа можно вставлять в нужных местах принудительную границу новой страни¬ цы. Для принудительного начала новой страницы следует переме¬ стить курсор на строку, после которой надо начать новую страницу и нажать [Ctrl—В]. Повторное нажатие [Ctrl—В], когда курсор находит¬ ся в той же строке, отменит границу новой страницы. Заметим, что вставленная пользователем граница страниц изобра¬ жается на экране сплошной горизонтальной чертой через весь экран, а автоматически установленная ChiWriter граница страниц — пунк¬ тирной горизонтальной чертой. Запрещение начала новой страницы после данной строки. Иногда автоматиче¬ ски проведенная граница страницы проходит в неподходящем месте, например между заголовком и следующим за ним текстом или посередине текста таблицы. ChiWriter позволяет переместить автоматически проведенную границу страниц на несколько строк вверх. Для перемещения автоматически проведенной границы страниц на одну стро¬ ку вверх следует поместить курсор в строку, после которой начинается новая стра¬ ница, и нажать [Ctrl—I]. Граница между страницами переместится на строку вверх. Нажатие комбинации клавиш [Ctrl-I] (I — Inhibit page break, т.е. запретить конец страницы) запрещает начинать новую страницу после той строки, на кото¬ рой стоит курсор. Повторное нажатие [Ctrl—I] снова разрешает начинать новую страницу. Для переноса автоматически установленной границы между страницами на несколько строк вверх следует установить курсор в ту строку, после которой начи¬ нается новая страница, и нажать [Ctrl—I], чтобы граница между страницами пере¬ местилась на строку вверх. Так надо делать до тех пор, пока граница между стра¬ ницами не будет проходить в устраивающем Вас месте. Заголовки страниц (колонтитулы) В редакторе ChiWriter можно задать печать верхних и нижних за¬ головков страниц (т.е. верхних и нижних колонтитулов, по-англий¬ ски — Headers и Footers). Можно определить отдельные заголовки для четных и нечетных страниц, а также для первых девяти страниц документа. В тексте заголовков можно использовать номер текущей страницы (колонцифру). Например, можно определить заголовки страниц так, чтобы на четных страницах номер страницы был бы сле¬ ва, а на нечетных — справа. Редактирование заголовков страниц. Редактирование заголовков осуществляется командами меню ’’Layout” ’’Headers” (заголовки ввер¬ ху страницы), ’’Layout” ’’Footers” (заголовки внизу страницы). При использовании этих команд ChiWriter спросит, какой именно заголо¬ вок Вы хотите редактировать: Default — заголовок, который печатается по умолчанию; Even — заголовок для четных страниц (если задан такой заголовок, то заголовок Default печатается только на нечетных страницах); 1-st page — заголовок для первой страницы файла; 9-th — заголовок для девятой страницы файла. Если указанного Вами заголовка еще не существует, то ChiWriter спросит:
Текстовый редактор ChiWriter 103 Create new header/footer ? (Создавать новый заголовок?) Если Вы ответили ’’Yes” или если указанный заголовок уже суще¬ ствовал, то ChiWriter выведет в нижней половине экрана текст заго¬ ловка, и Вы можете его редактировать. С помощью команд меню можно будет выполнить следующие действия: Close — окончить редактирование заголовка; Delete — удалить данный заголовок; Insert counter — вставить в текст заголовка номер страницы (колонцифру). Остальные пункты меню при редактировании заголовка полно¬ стью аналогичны соответствующим командам главного меню. Удаление заголовков страниц. Для удаления заголовка страницы следует войти в режим редактирования этого заголовка и выбрать пункт меню ’’Delete”. Можно также удалить заголовок с помощью ко¬ манд меню ’’Delete” ’’Header” или ’’Delete” ’’Footer”. Выбор шрифта для номеров страниц. Для выбора шрифта, кото¬ рым будут печататься номера страниц в верхних и нижних заголов¬ ках страниц, следует воспользоваться командами меню ’’Layout”, ’’Pagination”, ’’Font for page numbers” (т.е. нажать [Alt—L] P F). Для выбора шрифта нужно будет нажать на соответствующую ему функ¬ циональную клавишу. Если нажать клавишу [Enter], то номера стра¬ ниц печататься не будут. Сноски ChiWriter позволяет создавать и редактировать сноски (примеча¬ ния, по-английски — Footnote). В документе может быть любое число сносок. При редактировании текста документа тексты сносок не вид¬ ны, а в тех местах, где при печати будут номера сносок, выводятся символы, изображающие ступню (по-английски Foot — ступня). Под¬ ведя курсор к символу ступни и нажав [Ctrl—N], можно редактиро¬ вать текст сноски, который выводится в нижней половине экрана. При печати документа тексты сносок печатаются либо* в конце той страницы, где сделаны эти сноски, либо в конце документа. Редактирование сноски. Для редактирования существующей сно¬ ски следует подвести курсор к соответствующему этой сноске симво¬ лу, изображающему ступню, и нажать [Ctrl—N]. ChiWriter выведет в нижней половине экрана окно с текстом сноски, и Вы можете редак¬ тировать сноску. Для создания новой сноски надо подвести курсор к тому месту документа, где должен быть при печати номер сноски, и нажать [Ctrl—N]. ChiWriter выведет в нижней половине экрана окно, в кото¬ рое можно вводить текст сноски (рис. 9.11). Команды в появившейся строке меню дают возможность: Close — окончить редактирование текста сноски; Insert counter — вставить в текст сноски ее номер. Номер изображается знаком ступни (так же, как указание позиции сноски в документе).
104 Глава 9 Остальные пункты меню при редактировании сноски (Mark, Screen, Layout, Environ, Help) полностью аналогичны соответствую¬ щим командам главного меню. FOOTNOTE F2:RUSS FULL: 47Z SYN INS JST DOUBL ROU: 3 COL:63 PAG: 0 i 1 1 1 1 1 1 1 1 1 1 1 1 1 Итак, предлагается выбирать функции <F±> для проверки <5 датчика случайных чисел из системы R(EO, IIk) таким образом, <5 чтобы набор <F > был мультипликативно независимым^. Такой способ J выбора набора функций имеет следующие преимущества: J 1. Распределение статистик F^n) является с точностью до <3 Алгоритм проверки мультипликативной независимости набора <5 функций Радемахера-Уолша на ЕО, IIk приведен в параграфе 2.7. | <1<] Close Delete Mark Screen Layout Environ Insert counter Help Рис. 9.11. Редактирование сноски Удаление сноски. Для удаления сноски следует подвести курсор к соответствующему этой сноске символу, изображающему ступню, и нажать клавишу [Del]. ChiWriter спросит: Delete footnote? (Yes No) (Удалить сноску? Yes — да, No — нет) Для удаления сноски надо выбрать ответ ”Yes”. Выбор шрифта для номеров сносок. Для выбора шрифта, кото¬ рым будут печататься номера сносок, следует воспользоваться коман¬ дами меню ’’Layout”, ’’footNote”, ’’Font for footnote numbers” (т.е. на¬ жать [Alt—L] N F). Для выбора шрифта нужно будет нажать на соот¬ ветствующую ему функциональную клавишу. Если нажать клавишу [Enter], то номера сносок печататься не будут. Как правило, номера сносок печатаются шрифтом Small (содержащим уменьшенные латин¬ ские буквы и цифры). Выбор режима печатания сносок. Сноски могут печататься либо в конце той страницы, где они сделаны, либо в конце документа. Выбор режима печатания сносок осуществляется с помощью команд меню ’’Layout”, ’’footNotes”, ’’Endnotes” (т.е. надо нажать [Alt-Ll N Е). ChiWriter задаст вопрос:
Текстовый редактор ChiWriter 105 Print all footnotes at the end of document? (Yes No) (Печатать все сноски в конце документа?) Для печати сносок в конце документа надо выбрать ответ ”Yes”, в противном случае — ”No”. Разделитель между основным текстом и сносками. ChiWriter по¬ зволяет задавать текст, разделяющий основной текст документа и сноски. Этим текстом может быть, например, горизонтальная черта при печати сносок в конце той страницы, на которой сделана сноска, или же общий заголовок, скажем, ’’Примечания” — при печати всех сносок в конце документа. Для редактирования разделителя между основным текстом и сно¬ сками надо воспользоваться командами меню ’’Layout”, ’’footNote”, ’’Separator” ([Alt—L] N S). ChiWriter выведет в нижней половине экра¬ на текст разделителя и его можно редактировать. Команды в появив¬ шейся строке меню дают возможность: Close — окончить редактирование разделителя; Delete — удалить разделитель. Остальные пункты меню при редактировании разделителя (Mark, Screen, Layout, Environ, Help) полностью аналогичны соответствую¬ щим командам главного меню. Для удаления разделителя между основным текстом и сносками следует воспользоваться командами меню ’’Delete”, ’’Separator” ([Alt—D] S). Ключевые последовательности В редакторе ChiWriter можно запомнить последовательность нажатия любых клавиш. Такая запомненная последовательность нажатия клавиш называется ключевой последовательностью. В нужный момент можно указать ChiWriter, что необходимо выполнить данную ключевую последовательность. При этом результат будет такой же, как и при последовательном нажатии всех клавиш, входящих в эту ключевую последовательность. Имена ключевых последовательностей. Каждая ключевая последовательность должна иметь имя, по которому ChiWriter определяет, какую именно ключевую последовательность надо выполнить. Именем может быть любая комбинация из букв и цифр (от 1 до 8 символов), а также комбинация клавиш типа [Alt—X], где X — любая буквенно-цифровая клавиша (т.е. [Alt—А] — [Alt—Z] и [Alt—0] - [Alt—9]), или комбинации [Alt—F] и [Alt ] (плюс и минус — на основной части клавиатуры). Для получения информации об именах заданных ключевых последовательно¬ стей следует выбрать пункты меню ’’Environment”, ’’Key sequences”, ’’List” (т.е. на¬ жать [Alt—Е], К и L). Список имен имеющихся ключевых последовательностей бу¬ дет выведен на экран. Выполнение ключевой последовательности. Чтобы выполнить (вывести) нуж¬ ную ключевую последовательность, требуется нажать комбинацию клавиш [Ctrl—К]. ChiWriter спросит имя ключевой последовательности Enter key sequence name or [Alt-...] (Введите имя последовательности или нажмите [Alt—...]) Следует ввести имя ключевой последовательности и нажать [Enter] либо же ввести [Alt—X], где X — это один из символов A-Z, 0—9, + или — . Если Вы ввели [Ctrl—К] по ошибке, нажмите клавишу [Esc].
106 Глава 9 Если ключевая последовательность имеет имя вида [Alt—X], то для выпол¬ нения (вывода) этой ключевой последовательности можно просто нажать [Alt—X] (где X — соответствующая клавиша) при редактировании текста. Следует отметить, что ChiWriter . использует комбинации клавиш вида [Alt-X], где X - буквенная клавиша, для вызова команд меню. Если определить ключевую последовательность с именем вида [Alt—X], где X — заглавная буква, со¬ ответствующая пункту меню, то при нажатии [Alt—X] будет выполняться ключе¬ вая последовательность, а не пункт меню. В этом случае для обращения к этому пункту меню надо нажать клавишу [Esc] и либо выбрать данный пункт с по¬ мощью клавиш [«-] и [-*], либо нажать заглавную букву, соответствующую этому пункту меню. Ключевые последовательности, поставляемые с ChiWriter. Для удобства поль¬ зователей редактор ChiWriter поставляется вместе с набором ключевых последова¬ тельностей, полезных при написании математических формул (рис. 9.12). Эти ключевые последовательности расположены в файле MATH.KEY, их имена тако¬ вы: [1 , [2 , [3 , ]1 , ]2 , ]3 — рисование открывающих и закрывающих квадрат¬ ных скобок (цифра определяет размер скобки); (1 , (2 , (3 , )1 , )2 , )3 — рисование открывающих и закрывающих круглых скобок; {1 , {2 , {3 , }1 , }2 , }3 - рисование открывающих и закрывающих фигурных SUM1 и SUM2 INT1 и INT2 OINT EQU1 - EQU4 '*-[ SUM1 - 2 скобок; знаки суммирования; знаки интегрирования; знак интеграла по контуру; позволяют размещать формулы по центру, справа промежуток в 1—4 формулы. символа оставляя для указания номера 12 - <2 - SUM2 - £ кооп - / [3 - (3 - <3 - SUM3 - Л-] ч INTI ” f R00T2 / J2 - 33 - )3 - *•} >3 - OIHT - Рис. 9.12. Ключевые последовательности, поставляемые с ChiWriter Кроме указанных выше ключевых последовательностей, с ChiWriter поставля¬ ются также и ключевые последовательности для рисования химических формул (файл CHEM.KEY). Этот набор ключевых последовательностей использует шрифты Chemi, Chem2, Chem3 и Chemlett. Определение ключевых последовательностей. Для определения ключевой по¬ следовательности требуется нажать комбинацию клавиш [Ctrl—D]. ChiWriter спро¬ сит имя ключевой последовательности
Текстовый редактор ChiWriter 107 Enter key sequence name or [Alt-...] (Введите имя последовательности или нажмите [Alt—...]) Следует ввести имя ключевой последовательности и нажать [Enter] либо же ввести [Alt-X], где X - это A-Z, 0-9, + или -. Если Вы ввели [Ctrl—D] по ошибке, нажмите клавишу [Esc]. Если Вы ввели имя уже существующей ключевой после¬ довательности, то ChiWriter спросит Redefine key sequence? (Yes No) (Переопределить ключевую последовательность?) Если Вы не хотите изменять значение существующей ключевой последова¬ тельности, выберите "No”, а иначе — ”Yes”. После указания имени ключевой последовательности-можно вводить эту клю¬ чевую последовательность. В информационной строке экрана при этом указывает¬ ся режим DF (определение ключевой последовательности). В ключевую последова¬ тельность могут входить любые клавиши и их комбинации. Конец набора ключе¬ вой последовательности обозначается нажатием [Ctrl-D]. 3 а м е ч а н и е. При определении ключевой последовательности следует иметь в виду, что перед выводом ключевой последовательности состояние режимов вставка замена, синхронный/асинхронный, а также номер текущего шрифта за¬ поминаются. а после вывода ключевой последовательности - восстанавливаются. Сохранение ключевых последовательностей. При выходе из ChiWriter опреде¬ ленные во время сеанса работы ключевые последовательности автоматически не сохраняются. Если Вы хотите сохранить определенные во время сеанса работы ключевые последовательности, воспользуйтесь командами меню ’’Environment”, "Key sequences”, ’’Write” (т.е. нажмите [Alt—Е] К и W). Ключевая последовательность AUTOEXEC. Ключевая последовательность с именем AUTOEXEC имеет особый статус - она автоматически выполняется при начале сеанса работы с ChiWriter. С ее помощью можно установить удобные режи¬ мы работы ChiWriter. Например, следующая ключевая последовательность с име¬ нем AUTOEXEC установит режим печати с остановками между отдельными стра¬ ницами [Ecs] POSY [Esc] (здесь пробелы между символами не входят в ключевую последовательность, они употреблены для удобочитаемости). При выполнении этой ключевой последова¬ тельности произойдет вход в меню, выбор режимов ’’Print”, ’’Options”, ’’Stop between pages”. ”Yes" и затем выход из меню. Двухоконный режим работы ChiWriter позволяет одновременно редактировать два документа. Один из них — это основной документ, а второй называется „записной книжкой” (Notepad). Для редактирования „записной книжки” следу¬ ет нажать [Ctrl—О]. При этом ChiWriter открывает дополнительное окно в нижней половине экрана, в котором можно редактировать „за¬ писную книжку’’. После окончания редактирования „записной книж¬ ки’’ можно вернуться к редактированию основного документа, выбрав в меню команду ’’Close” (или нажав [Alt—С]). С ’’записной книжкой” можно выполнить следующие действия: ♦ записать ее в файл (пункты меню „Write”, ’’Notepad’’); ♦ распечатать на принтере (пункты меню ’’Print”, ’’Notepad’’); ♦ прочесть в ’’записную книжку” файл с диска (пункты меню ’’Read”, ’’Notepad”); ♦ уничтожить (пункты меню ’’Delete”, ’’Notepad”).
108 Глава 9 С помощью копирования текста в буфер и вставки текста из буфе¬ ра можно переносить или копировать фрагменты текста из основного документа в ’’записную книжку” и наоборот. Основные применения этой возможности ChiWriter таковы. 1. Можно собрать вместе отдельные куски редактируемого доку¬ мента. Для этого следует скопировать эти куски документа в ’’запис¬ ную книжку”. Затем можно записать ’’записную книжку” в файл или скопировать ее в редактируемый документ. После того как эти дейст¬ вия выполнены, следует удалить содержание ’’записной книжки”, чтобы не отнимать зря память у ChiWriter. 2. Можно вставить в редактируемый документ часть другого до¬ кумента. Для этого следует прочесть этот другой документ в ’’запис¬ ную книжку”, выделить нужную часть этого документа, скопировать ее в буфер и затем вставить содержание буфера в соответствующее место редактируемого документа. После этого содержимое ’’записной книжки” можно удалить. Вставка текста из другого файла В предыдущем пункте было объяснено, как можно вставить в ре¬ дактируемый документ часть текста из другого файла. Если текст другого файла необходимо вставить целиком, то такую вставку мож¬ но выполнить проще. Для этого надо воспользоваться пунктами меню ’’Read”, ’’Merge document” (т.е. нажать [Alt—R] и М), выбрать с по¬ мощью клавиш перемещения курсора [t], [I], [<-], [-►] нужный файл и нажать клавишу [Enter]. Если в списке файлов нет нужного файла, можно набрать его имя, при этом расширение .CHI можно не указы¬ вать. Предотвращение нехватки оперативной памяти Редактируемый файл хранится в оперативной памяти компьюте¬ ра. Емкость этой памяти в машине ограничена, поэтому если Вы ее превысите, то ChiWriter откажется выполнять команды. В информа¬ ционной строке экрана имеется индикатор FULL, сообщающий, ка¬ кой процент доступной памяти занят редактируемым файлом. Если значение индикатора FULL приближается к 90%, следует разбить ре¬ дактируемый документ на два документа. Лучше, если размер этих двух частей исходного документа будет приблизительно одинаков. Разбить редактируемый документ на два можно следующим спо¬ собом: 1) найти в документе место, в котором этот документ можно раз¬ бить на два; 2) выделить в документе одну из частей, на которые предполага¬ ется его разбить. 3) с помощью команды меню ’’Write” записать выделенную часть документа в другой файл. ChiWriter спросит имя файла, в который будет производиться запись; 4) удалить из редактируемого документа часть, записанную в дру¬ гой файл.
Текстовый редактор ChiWriter 109 Если заполнение оперативной памяти близко к 100%, ChiWriter может не суметь удалить эту часть документа целиком, т.е. при вы¬ делении части документа и выборе пункта меню ’’Cut” будет выдано сообщение Insufficient memory (Недостаточно памяти) Это связано с тем, что при удалении участка текста с помощью пункта меню ’’Cut” удаленный участок помещается в буфер, т.е. необ¬ ходимо место в оперативной памяти для хранения копии этого участ¬ ка текста в буфере. При появлении такого сообщения текст можно удалять не цели¬ ком, а пр частям. Можно также последовательно удалять строки это¬ го участка текста с помощью нажатия клавиш [Ctrl—Backspace]. Преобразование текстового файла в файлы ChiWriter и обратные преобразования Преобразование текстового файла в файл ChiWriter. Текстовый файл - это такой файл, как исходный текст програм¬ мы, пакетный командный файл MS DOS и т.д. Текстовый файл ’’пра¬ вильно” изображается на экране компьютера при выводе его коман¬ дой type и при просмотре его, например, с помощью режима View (клавиша [F3]) программы Norton Commander. Для преобразования текстового файла в файл ChiWriter имеется программа ASCII_CW. В исходном текстовом файле могут содержать¬ ся символы кириллицы и псевдографические символы. Текст этой программы приведен в приложении 5. Этот вариант программы ASCII_CW рассчитан на кодировку кириллицы и псевдографических символов, соответствующую альтернативному варианту ГОСТа, одна¬ ко эта программа легко может быть переделана для других кодиро¬ вок. Для удобства применения программы следует записать ее испол¬ нимый файл ASCII_CW.EXE в один из каталогов, указанных в ко¬ манде MS DOS Path. Формат вызова программы: ascii_cw имя-исходного-файла имя-получаемого-файла Если файл с именем ”имя-получаемого-файла” уже существует, то программа ASCII_CW спросит, можно ли продолжить работу. Если Вы ответите ”У”, то этот файл будет уничтожен, и вместо него будет создан новый файл, содержащий результаты работы программы ASCIICW. Пример ascii cw paper.doc paper.chi
110 Глава 9 Преобразование файла ChiWriter в текстовый файл. Преобразование документа ChiWriter в текстовый файл основано на печати этого документа в файл (режим меню ’’Print”, ”То file”) с использованием файла описания (драйвера) принтера ASCII.PRN. Текст файла ASCII.PRN приведен в приложении 5. Следует заметить, что такой способ преобразования документа ка¬ кого-либо редактора в текстовый файл встречается довольно часто. Например, редактор Microsoft Word для этой цели содержит файл описания принтера PLAIN.PRD. Для того чтобы файл ASCII.PRN можно было использовать для преобразования документов, подготовленных с помощью ChiWriter, в текстовые файлы, его следует записать в тот каталог, в котором на¬ ходятся служебные файлы ChiWriter (т.е. в каталог, указанный в ко¬ манде SET CHIFILES= ). Приведенный в приложении 5 текст файла ASCII.PRN рассчитан на кодировку кириллицы и псевдографических символов, соответст¬ вующую альтернативному варианту ГОСТа, однако этот текст легко может быть переделан для других кодировок. Для преобразования файла ChiWriter в текстовый файл необходи¬ мо сделать следующие действия: 1) вызвать ChiWriter для редактирования исходного файла; 2) установить длину страницы 9999 (команды меню ’’Layout”,. ’’Pagination”, ’’Paper length”, 9999); 3) установить ширину левого поля печати 0 (команды меню ’’Print”, ’’Options”, ’’Margin offset”, 0); 4) установить драйвер принтера ASCII. Для этого надо выбрать команды меню ’’Print” и ’’Change printer”, клавишами перемещения курсора выбрать надпись ’’ASCII” и нажать [Enter]. На вопрос: Do you want to make this change permanent ? (Y/N) (Сделать эту замену постоянной? Y — да, N —нет) надо ответить ”N”; 5) задать режим печати в файл. Для этого необходимо выбрать команды меню ’’Print”, ”То file” и набрать имя получаемого текстово¬ го файла; 6) начать печать в файл: команды меню ’’Print”, ”Go”. Краткая справка по ChiWriter Запуск ChiWriter: CW или CW имя-файла Помощь — [Alt—Н] Сохранение редактируемого текста — [Alt—W] D . Сохранение редактируемого текста и выход - [Alt—W] D [Alt-Q] . Меню: вход в меню - [Esc]; передвижение по меню - [*-], [-*]; выбор нужного пункта меню - [Enter]; выход из меню — [Esc].
Текстовый редактор ChiWriter 111 Передвижение по тексту: [-] - налево; [-►] — направо; [Т] — вверх; [1] — вниз; [Ноте] - на начало строки; [End] - на конец строки; [PgUp] - на страницу вверх; [PgDn] - на страницу вниз [Clrl-Home] - на начало текста; [Ctrl—End] - на конец текста; [Ctrl—] - на слово влево; [Ctrl—►] - на слово вправо; [Ctrl-PgUp] - на уровень вверх; [Ctrl-PgDn] - на уровень вниз; [Ctrl-G] - переход к странице с данным номером. Передвижение по тексту вверх и вниз и асинхронном режиме: [1] [PgUp] Удаление: - вверх на уровень; [1] — вниз на уровень; - вверх на строку; [PgDn] - вниз на строку. [Del] [Backspace] — текущего символа; — предыдущего символа; [Ctrl-Backspace] - текущей строки; [Alt-C] — выделенного фрагмента текста. Вставка и удаление подуровней строки (в асинхронном режиме): [Ctrl—А] - вставка подуровня строки; [Ctrl—Z] — удаление подуровня строки. Режимы работы: [Ins] — вставка/удаление при вводе символов; [••] — синхронный/асинхронный режим; [Ctrl—J] - режим выравнивания правого края абзаца. Действия с выделенным участком текста: начать выделение выделить нужный фрагмент отменить выделение удалить выделенный фрагмент скопировать фрагмент в буфер вставить фрагмент из буфера отформатировать как абзац Форматирование: - [Alt—М]; - M44[t].[i]; - [Alt—Е]; - [Alt-C]; - [Alt—D]; - [Ctrl—Р]; - [Alt-R] F. [Ctrl—С] — центрировать текущую строку; [Ctrl—М] - прижать текущую строку к правой границе текста; [Ctrl—F] — отформатировать текст до конца абзаца. Настройка границ абзаца: [Ctrl-[] [Ctrl-]] - установка левой границы абзаца; - установка правой границы абзаца. Контекстный поиск и замена: [Ctrl-S] [Ctrl-R] [Ctrl-L] - поиск подстроки; - поиск и замена подстроки; - повторение последней команды поиска или поиска и замены. Разбиение на страницы: [Ctrl-B] [Ctrl-I] — вставить или отменить границу страниц; - запретить ChiWriter делать после данной строки автоматиче¬ ский раздел страниц;
112 Глава 9 [Alt—L] Р Р [Alt—L] Р F - установить длину страниц; - установить шрифт, которым печатаются номера страниц (на¬ до будет нажать на соответствующую функциональную кла¬ вишу). Печать: [Alt—Р] G [Alt—Р] О F — начать печать; — установить диапазон печатаемых страниц; [Alt—Р] О S Y — режим печати на отдельных листах бумаги; [Alt—Р] О S N — режим печати без остановок между страницами; [Alt—Р] О М — установка левого поля страницы при печати на отдель¬ ных листах бумаги. Шрифты: [Alt—Е] F L [Функц. клавиша] символ Два раза [функц. клавиша] [Функц. клавиша] [Alt-H] — вывод информации о шрифтах; — ввод одного символа в шрифте, соответству¬ ющего функциональной клавише; — переход к вводу символов в шрифте, соот¬ ветствующего функциональной клавише; — вывод информации о расположении симво¬ лов шрифта на клавиатуре. Здесь [Функц. клавиша] — это [Fl]—[F10] или [Shift—Fl]-[Shift—F10]. Сноски: [Ctrl—N] [Alt—I] [Alt-C] [Alt-L] N F - начать редактирование сноски; - вставить в текст сноски ее номер; - окончить редактирование сноски; - (в основном меню) установить шрифт, которым печатаются номера сносок (надо будет нажать на соответствующую функ¬ циональную клавишу). Удалить сноску — подвести в тексте курсор к символу ступни, изображающем сноску, и затем нажать [Del] и ”Y”. Рисование линий и прямоугольников: [Ctrl—X] [t], [1], [-]иМ - (минус) > (знак больше) [Enter] - начать рисование; - рисовать линию или прямоугольник; - изменить тип рисуемой линии; - рисовать или удалить стрелки на конце линий; - внести в текст нарисованную линию или прямо¬ [Esc] угольник; — отменить нарисованную линию или прямоугольник. Установка редактора ChiWriter на жесткий диск Если компьютер имеет жесткий диск, для удобства работы с ChiWriter целесообразно установить его на жесткий диск. Для этого необходимо, чтобы на жестком диске было свободно около 1 Мбайта (точный размер требуемого места на диске зависит от того, какие шрифты принтера и экрана используются). Общее описание процесса установки. Для установки редактора ChiWriter на жесткий диск необходимо выполнить следующие дейст¬ вия:
Текстовый редактор ChiWriter 113 1) создать на жестком диске каталог (например, C:\CHI), в кото¬ ром будут располагаться файлы ChiWriter; 2) переписать в этот каталог файлы программ, шрифтов и словарей ChiWriter; 3) включить в командный файл AUTOEXEC.BAT команду set CHIFILES = имя-каталога с файлами ChiWriter например: set CHIFILES = C:\CHI 4) изменить, при необходимости файлы настройки ChiWriter CONFIG.PAR и CONFIG.SCR; 5) подобрать или, при необходимости, написать файл описания настройки на принтер. В этой книге из-за ограничений объема описание процесса уста¬ новки ChiWriter не приводится*. Его можно найти в комплекте документации и программ ’’Работа пользователя с персональным компьютером IBM PC”, распространяемым совместным предприятием ’’Интерквадро”, см. информацию в конце книги). Переопределение цветов монитора EGA при вызове ChiWriter. Драйверы экрана, поставляемые с ChiWriter, обычно дают возмож¬ ность работать с белыми символами на черном фоне, что не соответ¬ ствует физиологическим нормам, в соответствии с которыми наибо¬ лее желательным является предъявление черных знаков на светлом фоне. Фирма-изготовитель редактора ChiWriter предлагает использо¬ вать поставляемые с редактором программы VEGAINIT.EXE и VEGATABL.EXE для изменения цветов экрана при работе с монито¬ рами EGA и VGA. Однако этот подход имеет тот недостаток, что про¬ грамма VEGAINIT.EXE является резидентной и постоянно занимает оперативную память. Автор настоящей книги предлагает использо¬ вать для установки цветов экрана при работе с мониторами EGA и VGA программу CW_COLOR, приведенную в приложении 5. Она по¬ зволяет установить при работе с ChiWriter черный цвет символов и светло-сиреневый или серый цвет фона. Для применения этой программы исполнимый файл ChiWriter CW.EXE следует переименовать в CW PGM.EXE, а исполнимый файл программы CW COLOR переименовать в CW.EXE. В программе зна¬ чение константы Color соответствует цвету фона, а константа CWName должна содержать полное имя программы ChiWriter.
Часть 4 IBM PC ДЛЯ ОПЫТНЫХ ПОЛЬЗОВАТЕЛЕЙ Глава 10 ПАКЕТНЫЕ КОМАНДНЫЕ ФАЙЛЫ Довольно часто в процессе работы с компьютером обнаруживает¬ ся, что необходимо повторять одни и те же команды MS DOS (может быть, с небольшими изменениями) для того, чтобы осуществить неко¬ торые периодически выполняемые действия. Операционная система MS DOS позволяет записать нужную для этого последовательность команд в специальный файл, называемый командным файлом. Ко¬ мандный файл должен иметь расширение .ВАТ . Последовательность команд, записанную в файле, можно выполнить, набрав имя команд¬ ного файла (расширение .ВАТ при этом можно не указывать). П ример. Для оптимизации размещения файлов на жестком диске (т.е. '’сжатия" диска) можно использовать такую последовательность команд: с: - переход на диск С: ; cd \ - переход в корневой каталог; wipefile c:\-.bak /N /S - удаление всех файлов с расширением .bak с диска С:; sd с: /а /с - сжатие диска С:. Чтобы не набирать каждый раз эти команды, создадим файл COMPACT.BAT следующего содержания: с: cd \ wipefile c:\-.bak /N /S sd с: /а /с Тогда при вводе команды COMPACT выполнится нужная последовательность команд. Выполнение командных файлов Рассмотрим процессы запуска и выполнения командных файлов. 1. Для выполнения командного файла, находящегося в текущем каталоге или в одном из каталогов, указанных в команде MS DOS
Пакетные командные файлы 115 Path, необходимо ввести имя этого файла и параметры (о параметрах командных файлов см; ниже). Расширение имени файла (т.е. .ВАТ) можно не указывать. 2. Для выполнения командных файлов, не находящихся в теку¬ щем каталоге или в одном из каталогов, указанных в команде MS DOS Path, необходимо указывать полное имя командного файла, включающее путь к тому каталогу, в котором находится командный файл. Расширение имени файла .ВАТ можно не указывать. Например, пусть текущий каталог — C:\DOC\WORK, а надо вы¬ полнить командный файл ACCOUNT.BAT, находящийся в каталоге C:\DOC\BATCH, и указать параметры командного файла BILL.DOC и /Р. Тогда для выполнения этого командного файла необходимо ввести следующую команду: c:\doc\batch\account bill.doc /р или ..\batch\account bill.doc /р 3. Вы можете прервать выполнение командного файла, нажав [Ctrl—С] или [Ctrl—Break]. После этого на экране появится запрос: Terminate batch job (У/N)? (Прервать выполнение командного файла (Да/Нет)?) Если ответить Y, то выполнение командного файла будет оконче¬ но, а оставшиеся команды из командного файла будут проигнориро¬ ваны. Если ответить N, то выполнение командного файла будет про¬ должено со следующей команды. Заметим, что если выполняемая в момент нажатия [Ctrl—С] про¬ грамма воспринимает [Ctrl—С] как сигнал к завершению, то она будет аварийно завершена независимо от ответа на запрос. 4. Если вынуть дискету, на которой расположен выполняемый в данный момент командный файл, то перед выполнением следующей команды MS DOS попросит Вас снова вставить эту дискету в диско¬ вод. 5. Последней командой в командном файле может стоять имя другого командного файла. Это позволяет после окончания работы одного командного файла начать выполнение другого командного файла. 6. Если требуется из одного командного файла вызвать выполне¬ ние другого командного файла, а затем продолжить выполнение ис¬ ходного командного файла, то это можно сделать командой command /с имя командного-файла [параметры] Эта команда вызовет для выполнения новую копию командного процессора COMMAND.COM и передаст ей для обработки указанный командный файл. В версиях MS DOS, начиная с 3.3, можно вызвать из одного ко¬ мандного файла другой командный файл с помощью команды call: call имя-командного-файла [параметры]
116 Глава 10 7. По умолчанию команды пакетного файла выводятся на экран перед выполнением. Если в пакетный файл вставить команду echo off, то выполняемые за ней команды не будут выводиться на экран. Команда echo on включает режим вывода выполняемых команд на экран. Очень часто в качестве первой строки командного файла ис¬ пользуется команда echo off. В этом случае в начале выполнения ко¬ мандного файла на экран выводится строка echo off, а затем выпол¬ няемые команды на экран не выводятся. В версиях MS DOS, начиная с 3.3, можно избежать вывода на эк¬ ран и самой строки echo off. Для этого перед этой командой следует поставить символ ”@”: @echo off . Командные файлы с заменяемыми параметрами Часто приходится выполнять одни и те же команды или последо¬ вательности команд MS DOS только с небольшими отличиями. На¬ пример, для трансляции программы на Фортране с помощью трансля¬ тора фирмы Microsoft надо набирать команды типа следующей: fl /412 /AL /Ох /FPi87 /с имя-файла Чтобы упростить вызов этого транслятора, можно создать файл FORT.BAT следующего содержания: fl /412 /AL /Ох /FPi87 /с % 1 При выполнении этого командного файла символ % 1 будет заме- нен на значение первого параметра при вызове командного файла. Например, если ввести команду FORT SIMPSON.FOR то вместо % 1 будет подставлено SIMPSON.FOR, и тем самым будет выполнена команда fl /412 /AL /Ох /FPi87 /с SIMPSON.FOR Всего может быть использовано до девяти параметров, обозначае¬ мых символами %1 — %9. Если в командной строке при вызове ко¬ мандного файла задано меньше девяти параметров, то ’’лишние” сим¬ волы из %1 — %9 замещаются пустыми строками. Если Вы хотите использовать в командном файле более девяти параметров, обрати¬ тесь к описанию команды shift. В командном файле можно использовать также символ %0, зна¬ чение которого — имя выполняемого командного файла. Если в командном файле знак процента используется не для обоз¬ начения параметров, а для других целей (например, как часть имени файла), то его надо набрать дважды. Так, чтобы в командном файле указать файл XYZ%.COM, надо написать в строке командного файла XYZ%%.COM. Комментарии в командном файле Команда rem позволяет включать в командный файл коммента¬ рии, которые не будут интерпретироваться как команды во время ис¬
Пакетные командные файлы 117 полнения этого файла. Они могут использоваться для улучшения удо¬ бочитаемости командного файла. Если включен режим вывода испол¬ няемых команд на экран, то комментарии выводятся на экран, а если этот режим выключен командой echo off, то комментарии в команд¬ ном файле на экран не выводятся. Формат команды: rem любые-символы Сообщения при выполнении командного файла Команда echo позволяет выдавать из командного файла сообще¬ ния на экран. Формат команды: echo сообщение Сообщение, выдаваемое с помощью команды echo, выводится на экран даже тогда, когда режим вывода исполняемых команд на экран выключен командой echo off. Сообщение не может быть пустым или равным on или off, так как команды echo on и echo off управляют ре¬ жимом вывода исполняемых команд на экран, а команда echo без па¬ раметров выводит, включен или выключен режим echo. С помощью команды echo можно получить звуковой сигнал ком¬ пьютера. Для этого следует в сообщение, выводимое командой echo, включить символ с кодом 7. Это можно сделать, нажав клавишу [Alt] и, не отпуская ее, клавишу [7] в правой части клавиатуры (т.е. кла¬ вишу [Ноше]). Для того чтобы вывести на экран пустую строку, можно исполь¬ зовать команду echo с сообщением, состоящим из символа с кодом 255. Этому символу не соответствует никакое изображение. Для вво¬ да символа с кодом 255 надо нажать клавишу [Alt] и, не отпуская ее, последовательно нажать клавиши [2], [5] и [5] в правой части клавиа¬ туры. Приостановка выполнения командного файла Во время выполнения командного файла может возникнуть необ¬ ходимость его приостановки, например, для того, чтобы можно было поставить нужную дискету. Команда pause позволяет приостановить выполнение командного файла и ждать, пока не будет нажата какая- либо клавиша (алфавитно-цифровая клавиша, пробел или [Enter]) или [Ctrl—С]. Формат команды: pause При выполнении этой команды на экран выводится сообщение: Strike a key when ready . . . (Нажмите любую клавишу, когда будете готовы) и выполнение командного файла приостанавливается. Если нажать любую алфавитно-цифровую клавишу, пробел или [Enter], выполне¬ ние командного файла будет продолжено. Если нажать [Ctrl—С] или [Ctrl—Break], то будет выведено сообщение
118 Глава 10 Terminate batch job (Y/N)? (Прервать выполнение командного файла (Y — да, N — нет)?) Если ответить Y, то выполнение командного файла будет оконче¬ но, а оставшиеся команды из командного файла будут проигнориро¬ ваны. Если ответить N, то выполнение командного файла будет про¬ должено со следующей команды. Полезно перед выдачей команды pause выводить сообщение о том, какие надо выполнить действия. Например: echo Поставьте дискету DISK01 на дисковод А: pause Переходы в командном файле Командный файл может содержать метки и команды перехода. Это позволяет управлять порядком выполнения команд в файле. Любая строка командного файла, начинающаяся с двоеточия (”:”), воспринимается при обработке командного файла как метка. Имя метки определяется набором символов, следующих за двоеточи¬ ем. Для того чтобы указать командному процессору MS DOS, что требуется продолжить выполнение команд из командного файла, на¬ чиная со строки, которая следует сразу после некоторой метки, надо, воспользоваться командой GOTO метка . Если метка в команде GOTO не указана, то процесс пакетной обработки завершается. Пример goto ххх :ххх rem продолжение выполнения командного файла В этом примере после выполнения команды goto ххх выполнение командного файла продолжается со строки, следующей за меткой ххх. Проверка условий в командном файле Команда if позволяет в зависимости от выполнения условий вы¬ полнять или не выполнять команды в командном файле. Формат команды: if условие команда Параметры команда — это любая допустимая команда (в том числе goto). Эта команда выполняется, если условие в команде if истинно, в против¬ ном случае команда игнорируется; условие — это одно из приведенных ниже выражений: ERRORLEVEL число - условие истинно тогда, когда код завершения предыду¬ щей выполненной программы больше заданного числа или равен ему (код завер¬ шения устанавливается программами при окончании их работы, по умолчанию этот код равен нулю);
Пакетные командные файлы 119 строка1 == строка2 — условие истинно тогда, когда строка1 и строка2 полно¬ стью совпадают. Если в этих строках имеются символы %0 — %9, то вместо этих символов подставляются параметры командного файла; EXIST имя-файла - условие истинно, когда указанный файл существует; NOT условие - истинно тогда, когда указанное условие ложно. Пример. Создадим файл TYP.BAT, который выводит некоторый файл на экран. Формат вызова будет: ТУР имя-файла Мы будем проверять, что при вызове задан параметр и что указанный файл существует. Командный файл TYP.BAT может быть таким.(справа в скобках при¬ водятся номера строк файла): echo off (1) if -% 1 == - goto no param (2) if not axist % 1 goto not_exist (3) type % 1 (4) goto exit (5) :no_param: (6) echo Должен быть задан параметр (7) goto exit (8) :not_exist (9) echo Файл % 1 не найден (Ю) •:exit (И) В строке 2 проверяется, что параметр командного файла задан. Если он не за¬ дан, то происходит переход на метку no_param, на экран выдается сообщение ’’Должен быть задан параметр”, и выполнение командного файла прекращается. В строке 3 проверяется, что указанный в команде файл существует. Если он не существует, то выдается сообщение: Файл .... не найден” (.... — параметр, за¬ данный в команде TYP), и выполнение командного файла прекращается. Следует заметить, что при сравнении строк, содержащих символы параметров %0 - %9, следует проявлять осторожность. Например, сравнение второго параметра командного файла со строкой SSS не следует делать так: if %2 == SSS ... Дело в том, что если в команд¬ ном файле меньше двух параметров, то %2 будет замещено пустой строкой, и при выполнении команды возникнет ошибка. Еще опаснее сравнение if SSS == %2 ..., так как в этом случае, если в командном файле меньше двух параметров, возможно выполнение совсем не той команды. Правильное сравнение выглядит так: if —%2 == —SSS ... — оно работает в любом случае. Создание диалоговых командных файлов Иногда в командном файле нужно выполнить различные действия по выбору пользователя. Это можно сделать с помощью программы ASK. Формат вызова программы ASK следующий: ASK ’’сообщение”, список-символов Программа ASK выводит указанное сообщение и ждет, пока поль¬ зователь не введет один из указанных в списке символов. Значение переменной ERRORLEVEL (см. выше) устанавливается равным номе¬ ру введенного символа в списке.
120 Глава 10 Пример. ASK ’’Запустить программу ALFA [Y/N] ?”, YN При ответе N значение переменной ERRORLEVEL устанавливает¬ ся равным 2, при ответе Y — равным 1. Покажем, как может использоваться значение этой переменной. В приведенном ниже примере программа ALFA запускается, только если пользователь на соответствующий запрос ответит ”Y”: ASK ’’Запустить программу ALFA [Y/N] ?”, YN if ERRORLEVEL 2 goto continue ALFA rga continue С помощью программы ASK можно осуществить выбор из меню. Например, следующий командный файл задает выбор из трех игр: DIGGER, TETRIS и CAT. echo off echo Выберите желаемую игру: echo D - DIGGER echo T - TETRIS echo C — CAT ask ’’Введите D, T или C : ”, DTC if errorlevel 3 goto cat if errorlevel 2 goto tetris digger goto exit : tetris tetris goto exit :cat cat :exit Следует заметить, что проверки значения переменной ERRORLEVEL следует располагать в порядке убывания значений: сначала проверять на самое большое значение, затем на следующее по убыванию и т.д. Текст программы ASK приведен в приложении 5. Аналогичная программа (тоже называемая ASK) имеется в наборе программ Norton Utilities1 версии 1987 г. 1 Copyright f'C) Corp. 1987, Peter Norton.
Архивация файлов 121 Глава 11 АРХИВАЦИЯ ФАЙЛОВ Необходимость архивации файлов При эксплуатации компьютера по самым разным причинам воз¬ можна порча или потеря информации на магнитных дисках. Это мо¬ жет произойти из-за физической порчи магнитного диска, неправиль¬ ной корректировки или случайного уничтожения файлов, разруше¬ ния информации компьютерным вирусом и т.д. Для того чтобы уменьшить потери в таких ситуациях, следует иметь архивные копии используемых файлов и систематически обновлять копии изменяе¬ мых файлов. Для копирования файлов можно, разумеется, использовать ко¬ манду COPY или XCOPY. Однако при этом архивные копии занимают столько же места, сколько занимают исходные файлы, и для копиро¬ вания нужных файлов может потребоваться много дискет. Например, для копирования файлов с жесткого диска емкостью 20 Мбайт необ¬ ходимо 60 дискет емкостью по 360 Кбайт. В таком большом количе¬ стве дискет даже разобраться довольно трудно, поэтому трудоемкость создания и обновления архива будет весьма значительной. Более удобно использовать для создания архивных копий специ¬ ально разработанные программы для архивации файлов. Эти програм¬ мы позволяют не только сэкономить место на архивных дискетах, но и объединять группы совместно используемых файлов в один архи¬ вный файл, что позволяет гораздо легче разбираться в архиве фай¬ лов. Архивный файл Архивный файл представляет собой набор из одного или несколь¬ ких файлов, помещенных в сжатом виде в единый файл, из которого их можно при необходимости извлечь в первоначальном виде. Архи¬ вный файл содержит оглавление, позволяющее узнать, какие файлы содержатся в архиве, а также код циклического контроля для каждо¬ го файла, позволяющий проверить целостность архива. Программы PKZIP и PKUNZIP Далее в этой главе будут рассматриваться две удобные и быстро¬ действующие программы для архивации файлов и восстановления файлов из архива — программы PKZIP и PKUNZIP. По разрешению фирмы-разработчика (PKWARE Inc.) они могут свободно использо¬ ваться, копироваться и распространяться всеми желающими для не¬ коммерческих целей. Экономия места для хранения архивных копий при использовании программ PKZIP и PKUNZIP составляет прибли¬
122 Глава 11 зительно 60—70% для текстовых файлов и 20—30% для выполняе¬ мых файлов. Программа PKZIP позволяет создать архивный файл, добавить ту¬ да новые файлы, удалить файлы из архива, просмотреть файлы, со¬ держащиеся в архиве, и т.д. Программа PKUNZIP позволяет извле¬ кать файлы из архива и просмотреть, какие файлы содержатся в ар¬ хиве. Программы PKZIP и PKUNZIP используют для обрабатывае¬ мых ими архивных файлов расширение имени .ZIP . При вызове про¬ грамм PKZIP и PKUNZIP без параметров на экран выводятся сведе¬ ния о параметрах соответствующей программы. Программы PKZIP и PKUNZIP обладают также следующими по¬ лезными возможностями: ♦ защита копий файлов, помещаемых в архив, от несанкциониро¬ ванного использования с помощью пароля; ♦ автоматическая идентификация и использование процессора Intel—80386, если он установлен на компьютере; ♦ автоматическая архивация всех подкаталогов заданных катало¬ гов и восстановление структуры каталогов при извлечении фай¬ лов из архива. Вместе с программами PKZIP и PKUNZIP распространяется про¬ грамма ZIP2EXE, которая позволяет сделать из архивного файла ис¬ полнимый файл типа .EXE, который при выполнении создает все файлы из исходного архивного файла. Простейшие способы использования программ PKZIP и PKUNZIP Архивация всех файлов текущего каталога: PKZIP имя-архивного-файла Если расширение у имени архивного файла не указано, то подра¬ зумевается расширение .ZIP . Архивация указанных файлов: PKZIP имя-архивного-файла имена-файлов Имена файлов разделяются пробелами. В именах файлов можно употреблять символы * и ? . Извлечение всех файлов из архива в текущий каталог: PKUNZIP имя-архивного-файла Извлечение всех файлов из архива в указанный каталог: PKUNZIP имя-архивного-файла имя-каталога Просмотр содержания архивного файла: PKUNZIP —vn имя-архивного-файла Извлечение части файлов из архива в текущий каталог: PKUNZIP имя-архивного-файла имена-файлов
Архивация файлов 123 Имена файлов разделяются пробелами. В именах файлов можно употреблять символы * и ? . Извлечение части файлов из архива в указанный каталог: PKUNZIP имя-архивного-файла имя-каталога имена-файлов Программа PKZIP - помещение файлов в архив Формат команды: PKZIP режимы имя-архивного-файла [имена файлов]... Параметры имя архивного файла — задает обрабатываемый архивный файл. При помещении файлов в архив указанный в команде архивный файл может не существовать, в этом случае он автоматически создается. Если расширение у имени архивного файла не указано, то подразуме¬ вается расширение .ZIP ; имена файлов — задают файлы, включаемые в архив, удаляемые из архива и т.д. При задании имен файлов можно использовать сим¬ волы * и ? . Если имена файлов не заданы, то для режима —v (про¬ смотр архива) подразумеваются все файлы из архива, а для всех дру¬ гих режимов работы, кроме — d (удаление файлов из архива) подразу¬ меваются все файлы из текущего каталога; режимы - указываются с предшествующим знаком они мо¬ гут задаваться в любом месте командной строки. Первый параметр при вызове программы, не начинающийся со знака ”—”, рассматрива¬ ется как имя архивного файла, а остальные — как имена файлов, ко¬ торые помещаются в архив, удаляются из архива и т.д. Режимы работы программы PKZIP: -А — добавление файлов в архив; —U — обновление архива; -F - добавление новых версий файлов из архива. -I — добавление в архив файлов с атрибутом ”не архивирован”; -М - пересылка файлов в архив; -D — удаление файлов из архива; -V - просмотр оглавления файлов в архиве; -В<ттуть> — создавать временный файл типа .ZIP в указанном ка¬ талоге; -ES — убыстрение работы программы PKZIP при помещении в ар¬ хив; -R - копирование также и файлов из всех подкаталогов указан¬ ного каталога; -Р (употребляется вместе с режимом —R) — при копировании файлов из подкаталогов записывать в архив относительные пути ко¬ пируемых файлов; —X — исключение файла или группы файлов из обработки про¬ граммой PKZIP; -S — защита информации в архивном файле с помощью пароля.
124 Глава 11 При вызове программы PKZIP должно быть указано не более од¬ ного из режимов -A, -U, -F, -I, -М, -D, --V, задающих вид дейст¬ вий, выполняемых с архивным файлом. Если не задан ни один из этих режимов, то подразумевается режим —А - добавление файлов в архив. При указании режимов их можно комбинировать вместе (если в описании режимов специально не оговорено обратное), например вместо указания режимов —г —р можно употребить: -гр . Режимы программы PKZIP Режим —A (Add) — добавление файлов в архив. Если в архиве уже есть копия данного файла, то она замещается новой копией вне зависимости от того, имеет ли копия файла в архиве более позднюю дату, чем файл на диске, или нет. Если указанный в команде архивный файл не существует, то он создается. Если в команде не указан список добавляемых файлов, то в архив добавляются все файлы из текущего каталога. При добавлении файлов в архив (рис. 11.1) программа PKZIP со¬ общает имя каждого добавляемого файла, способ сжатия и на сколь¬ ко процентов его удалось сжать при помещении в архив (например, сжатие на 90% означает, что файл в архиве занимает 10% своего размера на диске). 12.24 C:\EXE\PKAROpkzip -а -еа4 -eb4 pkarc PKZIP (tm) FAST! Create/Update Utility Version 1.02 10-01-89 Copyright 1989 PKWARE Inc. All Rights Reserved. PKZIP/h for help Creating ZIP: PKARC.ZIP Adding: MAKESFX.COM Adding: PKARC.COM Adding: PKARC.DOC Adding: PKSFX.DOC Adding: PKSFX.PGM Adding: PKXARC.COM Adding: PKXARC.DOC Adding: PKXARCJR.COM Adding: README.DOC shrinking imploding imploding shrinking imploding imploding imploding imploding shrinking (49%), (27%), (57%), (39%), (24%), (22%), (54%), (22%), (29%), done, done, done, done, done, done, done, done, done. Рис. 11.1. Помещение файлов в архив Примеры PKZIP —a myzip — добавление в архивный файл MYZIP.ZIP всех файлов из текущего каталога; PKZIP -a docfiles *.doc a:\*.doc - добавление в архивный файл DOCFILES.ZIP всех файлов с расширением .doc из текущего каталога и из корневого каталога на диске А:. Режим —U (Update) — обновление архива. Этот режим отличает¬ ся от режима —А тем, что файл помещается в архив, только если его копии в архиве нет, или же копия в архиве есть, но она имеет более раннюю дату, чем у файла. Это позволяет предотвратить затирание более новой версии файла в архиве.
Архивация файлов 125 Как и для режима А, если указанный архивный файл не сущест¬ вует, то он создается. Если в команде не указан список добавляемых файлов, то в архив добавляются все файлы из текущего каталога. Пример. PKZIP —u a:myzip — обновление архивного файла A:MYZIP.ZIP. В архивный файл добавляются файлы из текущего каталога, однако если какой-ли¬ бо файл уже имеется в архиве и дата копии файла в архиве более поздняя, чем у файла из текущего каталога, то такой файл не добавляется в архив, и в архиве со¬ храняется более поздняя версия файла. Режим -F (Freshen) - добавление в архив новых версий файлов из архива. Этот режим отличается от режима —U тем, что в архив добавляются новые версии только тех файлов, которые уже имеются в архиве. Таким образом, в архив добавляются только те файлы, ко¬ пии которых уже находятся в архиве, но имеют более раннюю дату, чем у файла на диске. Режим F позволяет обеспечить, чтобы архи¬ вный файл содержал наиболее свежие версии своих файлов. Как и для режима А, если указанный в команде архивный файл не существует, то он создается. Если в команде не указан список до¬ бавляемых файлов, то подразумеваются все файлы из текущего ката¬ лога. Пример. PKZIP -f a:myzip b:\*.* — добавление в архив A:MYZIP.ZIP но¬ вых версий файлов этого архива, из корневого каталога диска В: . Режим —М (Move) - пересылка файлов в архив — работает в точ¬ ности так же, как режим —А, но после успешного добавления файлов в архив эти файлы уничтожаются. Если указанный в команде архи¬ вный файл не существует, то он создается. Если в команде не указан список пересылаемых в архив файлов, то в архив пересылаются все файлы из текущего каталога. Если при архивировании файлов возникает какая-либо ошибка, то исходные файлы не уничтожаются. Замечание. Использование программы PKZIP с режимом —М позволяет существенно сократить место на диске, занимаемое файлами. Часто имеет смысл хранить редко используемые программы и данные в виде архивного файла, а при необходимости их использования - извлекать из архива с помощью программы PKUNZIP. Примеры PKZIP —m myzip — пересылка в архивный файл MYZIP.ZIP всех файлов из текущего каталога; PKZIP -ш docfiles *.doc a:\*.doc - пересылка в архивный файл DOCFILES.ZIP всех файлов с расширением .doc из текущего каталога и из корневого каталога на диске А: . Режим -I - добавление в архив сархивированных файлов — от¬ личается от режима —А тем, что файл помещается в архив, только если он имеет атрибут ”не архивирован”. Если архивация файлов за¬ канчивается успешно, то у всех помещенных в архив файлов атрибут ”не архивирован” отменяется. Замечание. При создании или модификации файла ему автоматически приписывается атрибут ”не архивирован”. Этот атрибут может устанавливаться и отменяться программами Attrib, FA и др.
126 Глава 11 Режим —I позволяет автоматически обеспечивать, чтобы в архиве находились последние варианты файлов, даже если дата, установлен¬ ная в компьютере, не всегда правильна. Большинство выпускаемых сейчас компьютеров имеют аккумуляторы, поддерживающие работу встроенных часов даже тогда, когда в компьютере выключено пита¬ ние. Если таких аккумуляторов нет, то при каждом запуске компью¬ тера приходится устанавливать дату вручную. При этом возможны всякие ошибки и небрежности, в результате чего даты -файлов могут быть установлены неверно. В этом случае для обновления архива предпочтительнее использовать режим —I, а не режим —U. Пример. PKZIP -i a.myzip - обновление архивного файла A:MYZIP.ZIP. В архивный файл добавляются файлы из текущего каталога с атрибутом ”не архи¬ вирован”. При успешном окончании архивации атрибут ”не архивирован” у этих файлов отменяется. Режим —D (Delete) — удаление файлов из архива. При указании этого режима следует обязательно указывать, какие файлы удаляют¬ ся из архива. Пример. PKZIP —d myzip *.txt — удаление всех файлов с расширением .TXT из архивного файла MYZIP.ZIP. Режим —V (Verbose) — просмотр оглавления архива. Для каждо¬ го файла в архиве выводится его имя, размер в байтах, метод сжатия при помещении в архив, размер файла после сжатия, процент эконо¬ мии при сжатии, дата и время создания или последнего обновления файла, а также код циклического контроля и атрибуты файла (рис. 11.2). Замечания. 1. Если в архивном файле хранятся пути к файлам (см. опи¬ сание режима —Р), то в выводимой информации о содержании архивного файла в именах файлов вместо символа ”\” для разделения имен файлов и каталогов упот¬ ребляется символ ”/” (см. рис. 11.2). 2. Программа PKZIP не допускает употребление символов - и ? в имени архи¬ вного файла, а программа PKUNZIP - допускает. Поэтому с помощью программы PKUNZIP легко можно просмотреть оглавления всех архивных файлов в каталоге, а с помощью программы PKZIP это сделать труднее. Для режима —V могут быть заданы параметры, уточняющие фор¬ му выдачи информации на экран. Полный формат режима —V таков: -V[T | B][R][N | Е | S | D | Р] Иначе говоря, за буквой V может стоять буква Т или В, затем может стоять R, а затем может стоять одна из букв N, Е, S, D или Р, например — vn, — vts, — v . Значения этих уточнителей таковы: Т — выводить подробную информацию о файлах (рис. 11.3); В — выводить краткую информацию о файлах (без сведений о контрольных суммах и атрибутах файлов); R — изменить порядок вывода информации на обратный; N — выводить имена файлов в алфавитном порядке; Е — выводить информацию о файлах в алфавитном порядке их расширений; S -- выводить информацию о файлах в порядке возрастания их размера;
Архивация файлов 127 12.26 C:\EXE\PKAROpkzip -vnb pkarc PKZIP (tm) FAST! Create/Update Utility Version 1.02 10-01-89 Copyright 1989 PKWARE Inc. All Rights Reserved. PKZIP/h for help Searching ZIP: PKARC.ZIP Length Method Size Ratic ) Date Time Name — — — — — — — 25638 Shrunk 11554 55% 01-16-89 16:48 DOC/PKARC.DOC 1512 Shrunk 924 39% 01-16-89 16:51 DOC/PKSFX.DOC 17647 Shrunk 8421 53% 01-16-89 16:51 DOC/PKXARC.DOC 540 Shrunk 384 29% 04-27-87 00:00 DOC/README.DOC 1358 Shrunk 701 49% 04-27-87 00:00 MAKESFX.COM 19573 Shrunk 16293 17% 04-27-87 00:00 PKARC.COM 9758 Shrunk 8062 18% 03-03-89 16:44 PKSFX.PGM 12242 Shrunk 10520 15% 04-27-87 00:00 PKXARC.COM 12110 Shrunk 10403 15% 04-27-87 00:00 PKXARCJR.COM 100378 67262 33% 9 Рис. 11.2. Просмотр оглавления архива D — выводить информацию о файлах в порядке возрастания даты их создания или модификации: от самых старых файлов до самых но¬ вых; Р — выводить информацию о файлах в порядке возрастания степе¬ ни их сжатия при помещении в архивный файл: от наименьшей до наибольшей. Если не задан ни один из уточнителей N, Е, S, D или Р, то ин¬ формация о содержании архива выводится в том порядке, в котором эти файлы были записаны в архив. Filename: PKARC.DOC Date and Time: Jan 16,1989 16:48:28 Compression Method: Reduced-4 Compressed Size: 11143 Uncompressed Size: 25638 32 bit CRC value: 6ac83eb4 Created by: PKZIP: 1.0 under MS-DOS Needed to extract: PKUNZIP: 1.0 Рис,. 11.3. Информация о файле, выводимая программой PKZIP с режимом —VT Примеры pkzip -v myzip - просмотр оглавления архива MYZIP.ZIP; pkzip -vn myzip - просмотр оглавления архива MYZIP.ZIP с сортировкой имен файлов в алфавитном порядке. Режим —ES — убыстрение работы программы PKZIP. Программа PKZIP может работать значительно быстрее, но обеспечивать меньшую степень сжатия файлов при помещении в архив за счет не¬ сколько более медленной работы. Для этого следует указать режим -ES. Пример. PKZIP -es myzip - быстрое добавление в архивный файл MYZIP.ZIP всех файлов из текущего каталога.
128 Глава 11 Режим —В — указание каталога для временного архивного фай¬ ла. При модификации архивного файла программа PKZIP не удаляет сразу старую версию этого архивного файла, так как это может при¬ вести к потере данных. Сначала она создает специальный промежу¬ точный файл, в который записывает результаты своей работы. Имя этого файла — то же, что у модифицируемого архивного файла, но расширение имени — !!!. Если все результаты успешно записаны в промежуточный файл, то исходный архивный файл удаляется, а про¬ межуточный файл переименовывается и получает имя исходного ар¬ хивного файла. Таким образом, при модификации архивного файла необходимо как минимум столько места, сколько занимают вместе исходный ва¬ риант архивного файла и вариант, полученный после модификации. При работе с жестким диском это, как правило, не вызывает про¬ блем, но при модификации архивного файла на дискете может не хватить места на дискете. Для предотвращения нехватки места при модификации архивных файлов на дискетах у программы PKZIP имеется параметр —В. Этот параметр задает имя каталога, в который помещается промежуточ¬ ный файл программы PKZIP. Он может употребляться вместе с лю¬ бым режимом модификации архивного файла (—U, —F, —I, —М, — D). После успешной записи информации в промежуточный файл програм¬ ма PKZIP проверяет, хватит ли места на диске с исходным архивным файлом для того, чтобы скопировать промежуточный файл на место исходного архивного файла. Если места хватит, то исходный архи¬ вный файл удаляется, а промежуточный файл копируется в тот ката¬ лог, в котором был исходный архивный файл, причем имя копии — это имя исходного архивного файла. После этого промежуточный файл удаляется. Если же места для замены исходного архивного фай¬ ла не хватает, то выводится сообщение PKZIP: disk full (PKZIP: нет места на диске) Формат режима —В: —В[имя-каталога] Пример, pkzip -u -bd: a:doc-zip *.doc — обновление архива doc-zip.zip на дисководе а:. Промежуточный файл программы PKZIP располагается на дисководе d:. По окончании работы программы промежуточный файл удаляется. РежимЕ —R — архивация файлов из подкаталогов. Очень удобной возможностью программы PKZIP является архивация файлов из под¬ каталогов указанного каталога. При указании режима —R программа PKZIP ищет архивируемые файлы не только в каталогах, указанных в команде, но и во всех подкаталогах этих каталогов. Здесь под тер¬ мином ’’все подкаталоги” понимаются не только подкаталоги, непос¬ редственно входящие в указанные каталоги,(т.е. подкаталоги первого уровня), но и подкаталоги этих подкаталогов (т.е. подкаталоги второго уровня), и т.д., т.е. подкаталоги всех уровней вложенности. Пусть, например, дерево каталогов на диске С: имеет вид, представленный на рис. 11.4:
Архивация файлов 129 Корневой каталог work LETTERS PAPERS LETTERS f— ARCHIVE ■1— DRAFT Рис. 11.4. Дерево каталогов на диске С: Тогда при выполнении команды pkzip —ur a:doc.zip c:\docV.txt в архив a:doc.zip будут добавляться файлы с расширением имени .ТХТ из катало¬ гов: C:\DOC C:\DOC\LETTERS C:\DOC\PAPERS C:\DOC\PAPERS\ARCHIVE C:\DOC\PAPERS\DRAFT Как правило, вместе с режимом —R используется режим —Р, по¬ зволяющий сохранять в архивном файле информацию о том, в каких каталогах находились помещенные в архив файлы. Режим —Р - сохранение информации о каталогах в архивном файле. Режим —Р употребляется только вместе с режимом —R. При указании этого режима в архивном файле сохраняется информация о пути к сархивированным файлам. Если буква Р при указании режима набрана прописной, то сохраняется путь от текущего каталога на диске с архивируемыми файлами, а если строчной — то от того ката¬ лога, от которого был начат просмотр подкаталогов. Как правило, удобнее использовать режим —Р с прописной буквой Р. Пусть, например, для диска С:, файловая структура которого изображена на рис. 11.4, выполнена команда pkzip -гр a:doc.zip c:\docV.txt Тогда для файла c:\doc\letters\vasya.txt при помещении в архивный файл a:aoc.zip будет запомнено имя letters\vasya.txt, поскольку просмотр подкаталогов начался от каталога c:\doc. Режим -X (eXclude) - исключение файла или группы файлов из обработки программой PKZIP. При указании этого режима вслед за символом —X и до следующего пробела следует указать имя файла или (с помощью символов * и ?) группы файлов. Эти файлы не будут обрабатываться программой PKZIP. Пример, pkzip myzip -x*.bak *.tmp - помещение в архивный файл myzip.zip всех файлов из текущего каталога, кроме файлов с расширениями .bak и .tmp. Режим —S (Scramble) — защита информации в архивном файле с помощью пароля. При указании этого режима вслед за символом —S и до следующего пробела следует указать пароль, с помощью которо¬ го будут зашифровываться помещаемые в архив файлы. Эти файлы нельзя будет извлечь из архива, не указав того же пароля. Следует 5 Фигурнов В. Э.
130 Глава 11 заметить, что в пароле прописные и строчные буквы считаются раз¬ личными. Пример, pkzip mysecret -sSecret *.doc — помещение в архивный файл mysecret.zip всех файлов с расширением .doc из текущего каталога с зашифровы¬ ванием их с помощью пароля Secret. Особые случаи при использовании PKZIP Если при вызове программы PKZIP указаны неправильные режи¬ мы или не указано имя архивного файла, то на экран выводится ин¬ формация об использовании программы PKZIP. Если программа PKZIP не находит файлов, которые надо поме¬ щать в архив или которые надо удалять из архива, то она выводит сообщение: PKZIP: nothing to do! (PKZIP: нет работы!) Если программа PKZIP не находит указанного в команде архивно¬ го файла, из которого надо удалять файлы или оглавление которого надо вывести на экран, то она выводит сообщение: PKZIP: can’t find: <имя файла> (PKZIP: не найден файл <имя файла>) Если при работе программы PKZIP не хватает места на диске для размещения, создаваемого архивного файла (или новой версии сущест¬ вующего архивного файла), то программа PKZIP выводит сообщение: PKZIP: disk full (PKZIP: нет места на диске) Рекомендации по использованию программы PKZIP В настоящем параграфе приводятся рекомендации, позволяющие более эффективно использовать программу PKZIP. 1. Так как программа PKZIP используется часто, то ее следует поместить в один из каталогов, заданных командой PATH. 2. В архивном файле не содержится полной информации о том, в каком именно каталоге находился файл, помещенный в архив, а именно при использовании режима — Р в архивном файле хранится информация только об относительном пути к каталогу, содержащему сархивированный файл. При отсутствии режима — Р в архивный файл не помещается никакая информация о каталогах. Поэтому для упро¬ щения извлечения файлов из архива целесообразно при помещении файлов в архив указывать в качестве параметров программы PKZIP файлы только из одного каталога. Можно помещать в архив все файлы из каталога (а также его под¬ каталогов, если указан режим — R), а можно только часть (например, файлы, объединенные по некоторому признаку). Например, можно поместить в архив A:MY_ZIP все файлы с расширением имени .PAS из каталога C:\WORK:
Архивация файлов 131 pkzip —a a:my_zip c:\work\*.pas Однако после выполнения команды pkzip —a a:my_zip c:\work\*.pas c:\user\*.pas нельзя будет узнать, из какого каталога был помещен каждый файл из архива a:my_zip.zip : из каталога c:\work или из каталога c:\user. Поэтому извлечение файлов из архива будет затруднено. 3. При использовании режима — R (архивация файлов из подката¬ логов) следует задавать также и режим —Р — запоминание относи¬ тельного пути к архивированным файлам. Эта информация значи¬ тельно облегчает процесс извлечения файлов из архива, и при жела¬ нии ее можно игнорировать во время извлечения файлов из архива — при этом все файлы, извлекаемые из архива, помещаются в один ка¬ талог. 4. Иногда при архивации больших пакетов программ получается архивный файл такого большого размера, что он не помещается на дискету. При этом если архивный файл создается на дискете, то про¬ грамма PKZIP выводит сообщение: PKZIP: disk full В этих случаях надо все архивируемые файлы разбить на несколь¬ ко групп и архивировать каждую группу в отдельный архивный файл. Если архивируется несколько каталогов (в команде был указан режим — R), то проще всего в этом случае архивировать каждый ката¬ лог по отдельности. Далее мы будем рассматривать только случай, когда при архивации файлов из одного каталога получаемый архи¬ вный файл не помещается на одну дискету. Архивацию такого ката¬ лога удобно делать следующим образом: а) с помощью программы Norton Commander следует создать на дисководе, на котором находятся архивируемые файлы, новый ката¬ лог; б) с помощью Norton Commander перейти в архивируемый ката¬ лог (при этом он будет изображаться на панели Norton Commander), а на другую панель вывести каталог, созданный в п. а; в) поместить в архивный файл копии каких-либо файлов из архи¬ вируемого каталога. При этом можно указывать помещение в архив отдельных файлов или групп файлов (с помощью символов * и ?). Целесообразно архивный файл создавать на жестком диске, а не на дискете. Если размер архивного файла получился много меньше раз¬ мера дискеты, то к нему можно добавлять еще файлы. Если же раз¬ мер архивного файла превысил размер дискеты, то из него следует удалить часть файлов; г) полученный архивный файл следует переслать на дискету, что можно сделать с помощью режима RenMov (клавиши F6) Norton Commander. Перед пересылкой архивного файла на дискету целесооб¬ разно ввести команду VERIFY ON , чтобы включить режим проверки записи на диски, а после пересылки режим проверки записи на дис¬ ки можно выключить командой VERIFY OFF; д) файлы, помещенные в созданный архив, следует выделить на панели Norton Commander с помощью клавиш [Ins] и [+]. Затем эти S*
132 Глава 11 файлы надо переслать в каталог, созданный в п. а, что можно сделать с помощью режима RenMov (клавиши F6) Norton Commander; е) такие действия следует повторять до тех пор, пока все нужные файлы из исходного каталога не будут сархивированы; ж) после этого все файлы из каталога, созданного в п. а, следует переслать в исходный каталог, а каталог, созданный в п. а, уничто¬ жить. Указание каталога для временных файлов программы PKZIP Программа PKZIP может создавать в процессе работы временные файлы для хранения своей рабочей информации. По умолчанию эти файлы создаются на текущем диске, что не всегда удобно. Например, если текущим дисководом является дисковод для гибких дисков, то работа программы PKZIP замедляется и, кроме того, на дискете мо¬ жет не хватить места для создаваемого архивного файла. Целесообразно указать программе PKZIP, в каком каталоге ей следует создавать свои временные файлы. Это делается с помощью команды MS DOS set РКТМР=путь, где путь задает нужный ката: лог. Например, команда set PKTMP=D:\ задает помещение времен¬ ных файлов в корневой каталог диска D:. Такую команду можно вставить в командный файл AUTOEXEC.BAT, выполняемый при включении компьютера. Если на вашем компьютере всегда имеется временный (’’электрон¬ ный”) диск, то целесообразно задать размещение временных файлов программы PKZIP на ’’электронном” диске — это убыстрит работу программы PKZIP. Следует заметить, что если Вы пользуетесь программой Norton Commander или какой-либо другой аналогичной программой, то для того чтобы ввести команду MS DOS Set, следует выйти из программы Norton Commander и ввести команду Set непосредственно в ответ на приглашение MS DOS, иначе эта команда не сработает. Программа PKUNZIP -извлечение файлов из архива Формат команды. PKUNZIP [режимы] имя-архива [путь] [имена файлов]... Параметры имя архива - задает имя архива, откуда извлекаются файлы. Ес¬ ли расширение у имени архивного файла не указано, то подразумева¬ ется расширение .ZIP В имени архивного файла можно употреблять символы * и ? — в этом случае обрабатывается несколько архивных файлов; путь — задает каталог, в который помещаются извлекаемые из ар¬ хива файлы. Если путь не указан, то подразумевается текущий ката¬ лог. Указание пути имеет смысл только тогда, когда из архива извле¬ каются и выводятся на диск файлы (режимы —X, —N, —О);
Архивация файлов 133 имена файлов - указывают, какие файлы извлекаются из архива, просматриваются, проверяются на целостность и т.д. При задании имен файлов можно использовать символы * и ? . По умолчанию под¬ разумеваются все файлы, имеющиеся в архиве. Задание режимов работы программы PKUNZIP не обязательно. Если режимы не заданы, то подразумевается извлечение файлов из архива. Режимы программы PKUNZIP указываются с предшествую¬ щим знаком они могут задаваться в любом месте командной строки. Первый параметр при вызове программы, не начинающийся со знака рассматривается как имя архивного файла, а остальные — как имена файлов, которые извлекаются из архива, проверяются на целостность и т.д. Режимы работы программы PKUNZIP: -X (extract) - извлечение файлов из архива. Этот режим прини¬ мается, если не задано других режимов программы PKUNZIP; -О (Overwrite) - замещение существующих файлов на диске; -V (Verbose) — просмотр оглавления файлов в архиве; -Т (Test) — проверка целостности архива; -N (New) — файлы извлекаются из архива только в том случае, если соответствующие файлы на диске не существуют или имеют бо¬ лее старую дату, чем файлы в архиве; —D (Directory) — восстановление каталогов при извлечении фай¬ лов из архива; —С (Console) — вывод файлов из архива на экран; -Р (Print) - вывод файлов из архива на принтер; —S (Scramble) — указание пароля для извлечения файлов из архи¬ ва. Режимы работы программы PKUNZIP Режим -X - извлечение файлов из архива — принимается по умолчанию, т.е. тогда, когда не задано других режимов программы PKUNZIP. Если Вы не укажете в команде каталог, в который надо помещать извлекаемые из архива файлы, то они помещаются в теку¬ щий каталог. Если извлекаемый из архива файл уже существует на диске, то программа PKUNZIP выдаст сообщение: PKUNZIP: Warning! File <имя файла> already exists. Overwrite ? (y/n) PKUNZIP: Предупреждение! Файл <имя файла> уже существует. Перезаписать его ? (У — да, N — нет) При извлечении файлов из архива программа PKUNZIP выводит на экран информацию об именах извлекаемых файлов (рис. 11.5).
134 Глава 11 А:\> pkunzip -х pkzO92 c:\pkzip PKUNZIP (tm) FAST! Extract Utility Version 1.02 10-01-89 Copyright 1989 PKWARE Inc. All Rights Reserved. PKUNZIP/h for help Searching ZIP: PKZ092.ZIP Unshrinking: c:/pkz ip/README.DOC Unshrinking: c:/pkz ip/RELEASE.DOC Expanding: Unshrinking: c:/pkz ip/MANUAL.DOC c:/pkz ip/ORDER.DOC Unshrinking: c:/pkz ip/DEDICATE.DOC Expanding: Expanding: c:/pkz ip/APPNOTE.TXT c:/pkz ip/PKZIP.EXE Expanding: Expanding: c:/pkzip/PKUNZIP.EXE c:/pkzip/ZIP2EXE.EXE Unshrinking: c:/pkz ip/MAKESFX.COM Рис. 11.5. Информация, выводимая на экран программой PKUNZIP при извлечении файлов из архива Заметим, что при указании имен извлекаемых из архива файлов программа PKUNZIP использует символ ”/” вместо ”\” в качестве разделителя имен каталогов и файлов. Примеры pkunzip —х a:myzip c:\work *.pas *.doc — извлечение из архивного файла A:\MYZIP.ZIP файлов с расширениями .DOC и .PAS в каталог C:\WORK. pkunzip a:myzip b:\ — извлечение всех файлов из архива A:MYZIP.ZIP. Извле¬ каемые файлы помещаются в корневой каталог диска Ь: . Режим —О — замещение существующих файлов на диске. Обычно при извлечении из архива файла, который уже имеется на диске, программа PKUNZIP делает запрос: PKUNZIP: Warning! File <имя файла> already exists. Overwrite ? (y/n) PKUNZIP: Предупреждение! Файл <имя файла> уже существует. Перезаписать его ? (Y — да, N — нет) При задании режима —О существующие на диске файлы будут за¬ мещены без всяких запросов. Пример, pkunzip -о a:myzip c:\work *.pas *.doc - извлечение из архивного файла A:\MYZIP.ZIP файлов с расширениями .DOC и .PAS в каталог C:\WORK. Файлы с теми же именами, уже имеющиеся в каталоге C:\W0RK, будут замеще¬ ны без запросов и предупреждений. Режим —N — извлечение новых версий файлов из архива. При указании режима —N файлы извлекаются из архива только в том слу¬ чае, если соответствующие файлы на диске не существуют или имеют более старую дату, чем файлы в архиве. Это препятствует случайно¬ му затиранию новых версий файлов на диске старыми версиями тех же файлов, сохраненных в архиве.
Архивация файлов 135 Режим -V — просмотр оглавления файлов в архиве. Режим —V служит для вывода информации о файлах, содержащихся в архиве. Для каждого файла из архива выводится следующая информация (рис. 11.6): Length Method Size Ratio — размер исходного файла; — метод сжатия файла при помещении его в архив; — размер файла после сжатия; — процент места в архиве, сохраненного благодаря сжатию файла; Date — дата создания или последней модификации исход¬ ного файла; Time — время создания или последней модификации исход¬ ного файла; CRC-32 Attribute — код циклического контроля файла; — атрибуты файла (s — системный, h — спрятанный, w — для чтения и записи, г — только для чтения, * — файл защищен паролем); Name — имя файла. А:\> pkunzip -vb pkarc PKUNZIP (tm) FAST! Extract Utility Version 1.02 10-01-89 Copyright 1989 PKWARE Inc. . All Rights Res served. PKUNZIP/h for help Searching ZIP: PKARC.ZIP Length Method Size Ratio ' Date Time Name — — — — — ____ — 540 Shrunk 384 29% 04-27-87 00:00 README.DOC 1358 Shrunk 701 49% 04-27-87 00:00 MAKESFX.COM 1512 Shrunk 924 39% 01-16-89 16:51 PKSFX.DOC 9758 Imploded 7481 24% 03-03-89 16:44 PKSFX.PGM 12110 Imploded 9455 22% 04-27-87 00:00 PKXARCJR.COM 12242 Imploded 9553 22% 04-27-87 00:00 PKXARC.COM 17647 Imploded 8149 54% 01-16-89 16:51 PKXARC.DOC 19573 Imploded 14460 27% 04-27-87 00:00 PKARC.COM 25638 Imploded 11143 57% 01-16-89 16:48 PKARC.DOC 100378 62250 38% 9 Рис. 11.6. Информация об оглавлении архива, выводимая программой PKUNZIP Формат режима —V: -V[B][R][N|E|S|D|P] Иначе говоря, за буквой V может стоять буква В, затем может стоять R, а затем может стоять одна из букв N, Е, S, D или Р, например —vn, —vts, —v . Значения этих уточнителей таковы: В — выводить краткую информацию о файлах (без сведений о контрольных суммах и атрибутах файлов); R — изменить порядок вывода информации на обратный; N — выводить имена файлов в алфавитном порядке; Е — выводить информацию о файлах в алфавитном порядке их расширений;
136 Глава 11 S — выводить информацию о файлах в порядке возрастания их размера; D — выводить информацию о файлах в порядке возрастания даты их создания или модификации: от самых старых файлов до самых но¬ вых; Р — выводить информацию о файлах в порядке возрастания степе¬ ни их сжатия при помещении в архивный файл: от наименьшей до наибольшей. Если не задан ни один из уточнителей N, Е, S, D или Р, то ин¬ формация о содержании архива выводится в том порядке, в котором эти файлы были записаны в архив. Вывод на экран информации о файлах можно приостановить на¬ жатием клавиш [Ctrl—S]. Повторное нажатие [Ctrl—S] возобновит вы¬ вод информации на экран. Можно вывести информацию о файлах, находящихся в архиве, не на экран, а в файл или на принтер. Для этого следует в конце команды написать: > имя-файла — для вывода в файл; > PRN — для вывода на принтер. Примеры pkunzip a:\myzip —v - вывод информации о файлах в архиве A:\MYZIP.ZIP; pkunzip a:\myzip —vn — вывод информации о файлах в архиве A:\MYZIP.ZIP. Информация о файлах упорядочена по алфавиту; pkunzip а:\* —vn — вывод информации о содержании всех архивных файлов в корневом каталоге диска А: . Информация о файлах упорядочена по алфавиту; pkunzip a:\myzip —v > ргп — вывод на принтер информации о файлах в архиве A:\MYZIP.ZIP. Режим —Т — служит для проверки целостности архива. Для каж¬ дого файла из архива вычисляется код циклического контроля и сравнивается со значением, записанным в оглавлении архива. После этого выводится сообщение о результате проверки целостности файла (рис. 11.7). А:\> pkunzip -t pkz092 PKUNZIP (tm) FAST! Extract Utility Version 1.02 10-01-89 Copyright 1989 PKWARE Inc. All Rights Reserved. PKUNZIP/h for help Searching ZIP: PKZ092.ZIP Testing: README.DOC OK Testing: RELEASE.DOC OK Testing: MANUAL.DOC PKUNZIP: Warning! file fails CRC check Testing: ORDER.DOC OK Testing: DEDICATE.DOC OK Testing: APPNOTE.TXT OK Testing: PKZIP.EXE OK Testing: PKUNZIP.EXE OK Testing: ZIP2EXE.EXE OK Testing: MAKESFX.COM OK PKZ092.ZIP has errors! Рис. 11.7. Проверка целостности архива
Архивация файлов 137 Например, на рис. 11.7 файл MANUAL.DOC в архиве оказался ис¬ порченным. Наиболее частая причина таких ошибок — сбои при чте¬ нии или записи информации на дискеты. Для восстановления информации из поврежденных архивных файлов вместе с программами PKZIP и PKUNZIP поставляется специальная программа PKZIPFIX. Формат ее вызова: PKZIPFIX имя-архивного-файла Программа PKZIPFIX создает в текущем каталоге архивный файл PKFIXED.ZIP, содержащий всю информацию, которую удалось восстановить из исходного архивного файла. Рекомендутся извлечь из него все файлы с помощью программы PKUNZIP, а затем снова упаковать их с помощью программы PKZIP. Примеры pkunzip —t a:\myzip — проверка целостности архива A:\MYZIP.ZIP; pkunzip —t а:\* — проверка целостности всех архивных файлов в корневом ка¬ талоге диска А: Режим —С - задает вывод файлов из архива на экран. Если не указать, какие именно файлы выводятся на экран, то выводятся все файлы из архива. Вывод информации на экран можно приостановить нажатием комбинации клавиш [Ctrl—SJ. Повторное нажатие [Ctrl—S] возобновит вывод на экран. Завершить вывод информации на экран можно, на¬ жав [Ctrl—С]. После буквы С можно задать уточнитель М, который указывает, что после заполнения экрана надо сделать паузу. В этом случае в по¬ следней строке экрана выводится слово ’’More” и сообщается, какая часть файла (в процентах) уже выведена на экран. Вы можете нажать одну из клавиш: Пробел [Enter] [Esc] [Ctrl-C] — вывести следующий экран; — вывести следующую строку файла; — окончить вывод данного файла; — прекратить вывод файлов на экран. При указании режима —СМ программа PKUNZIP делает паузы между выводом файлов на экран. При этом выводится сообщение: End of File — Press any key to continue (Конец файла — для продолжения нажмите любую клавишу) Примеры pkunzip —с a:\myzip *.doc — вывод на экран всех файлов с расширением .DOC из apxHBa,A:\MYZIP.ZIP ; pkunzip —cm stuff — вывод на экран всех файлов из архива STUFF.ZIP . При заполнении экрана делаются паузы. Режим —Р — задает вывод файлов из архива на принтер. Если не указать, какие именно файлы выводятся на принтер, то печатаются все файлы из архива. Завершить вывод на принтер можно, нажав [Ctrl-C].
138 Глава 11 Вслед за буквой Р могут следовать символы, уточняющие режим вывода файлов на принтер, а также указывающие, к какому порту подсоединен принтер. Формат режима — Р: -Р[А| В][С][11 2 | 3 | 4] Иначе говоря, за буквой V может следовать А или В, а затем — цифра от 1 до 4, например: —VA, —VB4, —V4, —V. Смысл этих уточ¬ нителей таков: А или В — если действует режим А, применяемый по умолчанию, то после вывода каждого файла на принтер выводится символ ’’конец страницы”. Этот режим используется для печати текстов. Если дейст¬ вует режим В, то после вывода каждого файла символ ’’конец страни¬ цы” на принтер не выводится. Этот режим используется для вывода на принтер различных специальных файлов, например шрифтов для лазерных принтеров; С — если задан этот режим, то принтер, на который выводятся файлы, подключен к асинхронному порту (С0М1—COM3). Если ре¬ жим С не задан, то принтер, на который выводятся файлы, подклю¬ чен к параллельному порту (LPT1-LPT4); 1, 2, 3, 4 — номер порта, на который выводятся файлы. По умол¬ чанию — 1. Примеры pkunzip —р stuff paper.doc - печать файла paper.doc из архива STUFF.ZIP. По¬ сле печати файла на принтер выводится символ ’’конец страницы”; pkunzip -pbcl laserfnt — вывод на принтер, подключенный к порту СОМ1, всех файлов из архива LASERFNT.ZIP. После вывода каждого файла символ ’’ко¬ нец страницы” на принтер не выводится. Например, архивный файл LASERFNT.ZIP может содержать шрифты для лазерного принтера. Тогда выпол¬ нение приведенной выше команды осуществит загрузку шрифтов в принтер. Та¬ кой способ загрузки шрифтов гораздо эффективнее обычно применяемого копиро¬ вания шрифтов в принтер командой Сору, поскольку файлы со шрифтами на дис¬ ке могут занимать больше одного Мбайта, а в архивном файле за счет сжатия они занимают в 5—10 раз меньше места. Режим —D — восстановление каталогов при извлечении файлов из архива. При архивации файлов программой PKZIP с использова¬ нием режимов -R и —Р в архив помещаются не только файлы из ар¬ хивируемого каталога, но и из всех его подкаталогов. При этом в ар¬ хивном файле запоминаются не только имена сархивированных фай¬ лов, но и информация о пути от архивируемого каталога до каталога, содержащего каждый сархивированный файл. При указании режима —D программа PKUNZIP использует эту информацию при извлечении файлов и помещает каждый файл в соответствующий подкаталог того каталога, в который надо помещать извлекаемые из архива файлы. Если такого каталога не существует, то он создается. Кроме того, при указании режима -D заданный в команде ката¬ лог, в который надо помещать файлы, также может не существовать, в этом случае он создается. Например, пусть дерево каталогов на диске С: имело вид, представленный на рис. 11.8.
Архивация файлов 139 Корневой каталог LETTERS PAPERS i— ARCHIVE DRAFT USER Рис. 11.8. Дерево каталогов на диске С: до выполнения команды PKUNZIP Будем предполагать, что все каталоги на рис. 11.8 были непусты, а файла A:\MYZIP.ZIP до выполнения этой команды на диске не бы¬ ло. После выполнения команды pkzip —гр a:\myzip c:\doc\*.* будет создан архивный файл a:\myzip.zip. Тогда после выполнения команды pkunzip —d a:\myzip c:\work дерево каталогов на диске С: будет иметь такой вид: Корневой каталог USER LETTERS PAPERS LETTERS PAPERS i— ARCHIVE ■1— DRAFT r- ARCHIVE -J— DRAFT Рис. 11.9. Дерево каталогов на диске С: после выполнения команды PKUNZIP В каталоге WORK будут находиться копии файлов из каталога DOC, а в подкаталогах LETTERS, PAPERS, ARCHIVE и DRAFT ката¬ лога WORK — копии файлов из соответствующих подкаталогов ката¬ лога DOC. Замечания. 1. Указание режима —D не является обязательным при из¬ влечении файлов из архива, созданного с режимами —R и —Р. Если не указывать режим —D, то программа PKUNZIP будет игнорировать всю информацию о ката¬ логах, содержащуюся в архивном файле, и будет помещать извлекаемые файлы в один каталог. 2. Использование режима -D может быть полезно и при извлечении файлов из архива, созданного без указания режима —Р. При задании режима —D про¬ грамма PKUNZIP автоматически создаст каталог, в который надо помещать фай¬ лы, если этого каталога не существует. Режим —S — указание пароля для извлечения файлов из архива. При указании этого режима вслед за символом — S и до следующего пробела следует указать пароль, с помощью которого нужные файлы зашифровывались при помещении в архив. Пример pkunzip mysecret —sSecret *.doc — извлечение из архивного файла mysecret.zip всех файлов с расширением .doc.'Эти файлы были помещены в архив с зашифро¬ выванием с помощью пароля Secret.
140 Глава 11 Рекомендации по использованию программы PKUNZIP В настоящем параграфе приводятся рекомендации, позволяющие более эффективно использовать программу PKUNZIP. 1. Так как программа PKUNZIP используется часто, то ее следует поместить в один из каталогов, заданных командой PATH. 2. Если Вы пользуетесь программой Norton Commander, то целе¬ сообразно поместить в файл NC.EXT, задающий действия программы Norton Commander в зависимости от расширений имен файлов, стро¬ ку: .zip pkunzip —vn ! После этого можно будет, выделив с помощью программы Norton Commander архивный файл и нажав клавишу [Enter], получить оглав¬ ление этого архивного файла. Использование списка файлов в программах PKZIP и PKUNZIP В программах PKZIP и PKUNZIP можно использовать заранее подготовленный список файлов. Этот список представляет собой тек¬ стовый файл, в каждой строчке которого записано одно имя файла. В именах файлов можно употреблять символы * и ? , а также указывать дисковод и путь к файлу. Пример списка файлов (имя файла со списком — GROUP.FLS): C:\DOC\*.* C:\RECLAMAV.DOC C:\LETTERSV.DOC Для использования списка файлов в программах PKZIP и PKUNZIP следует задать его имя в команде PKZIP или PKUNZIP в той позиции, где указываются имена файлов. Для того чтобы про¬ граммы PKZIP и PKUNZIP могли отличить список файлов от обычно¬ го файла, перед именем списка файлов ставится символ ”@”. Указа¬ ние в команде списка файлов эквивалентно указанию всех файлов, входящих в список. Пример pkzip —uea4 -еЬ4 A:\MYZIP @GROUP.FLS C:\PAPERS\*.* Здесь в архивный файл A:\MYZIP.ZIP добавляются файлы из каталогов C:\PAPERS, C:\DOC, а также файлы с расширением .DOC из каталогов C:\RECLAMA и C:\LETTERS. Замечания об архивации файлов Архивация различных видов файлов. Все файлы на магнитных дисках можно разделить на три группы по их отношению к архива¬ ции. Первая группа — это файлы, которые можно сархивировать один раз, после чего их архивные копии изменяться не должны. Эти фай¬
Архивация файлов 141 лы входят в тот или иной используемый Вами пакет программ или в операционную систему MS DOS. Как правило, на дискетах с архивны¬ ми копиями таких файлов заклеивают прорезь защиты от записи, чтобы предотвратить случайное изменение архивной копии. Таким образом, архивация этих файлов является одноразовым процессом. Зато архивные копии данных файлов могут использоваться много¬ кратно. Вторая группа файлов — это файлы, которые созданы или моди¬ фицируются Вами. Эти файлы необходимо периодически архивиро¬ вать. Желательно поэтому максимально автоматизировать процесс архивации таких файлов. Третья группа файлов — это сами архивные файлы. Чтобы не возникало затруднений в процессе архивации файлов, целесообразно размещать те файлы, которые необходимо периодиче¬ ски архивировать, в других каталогах, чем все остальные файлы. Это позволит значительно упростить процесс архивации. Следует, заметить, что некоторые виды файлов не могут быть сар¬ хивированы стандартным образом. Это, например, файлы операцион¬ ной системы MS DOS IO.SYS и MSDOS.SYS, а также файлы, входя¬ щие в пакеты программ, защищенные от копирования. Команды для периодической архивации файлов. Пусть на рис. 11.10 изображено дерево каталогов на диске С:, а файлы, которые надо периодически архивировать, расположены в каталогах DOC, USER, WORK и в их подкаталогах. Корневой каталог Рис. 11.10. Каталоги на диске С: Тогда для создания архивных копий периодически архивируемых каталогов необходимо выполнить команды: pkzip -а —греа4 —еЬ4 a:\doc c:\doc\*.* pkzip —а —греа4 —еЬ4 a:\user c:\user\*.* pkzip -а -греа4 —еЬ4 a:\work c:\work\*.* а для обновления этих архивных копий следует выполнить команды: pkzip -и —греа4 —еЬ4 a:\doc c:\doc\*.* pkzip —u —rpea4 —eb4 a:\user c:\user\*.* pkzip —u — rpea4 —eb4 a:\work c:\work\*.* (вместо режима —U можно использовать режим —I).
142 Глава 11 Командные файлы для архивации файлов. Как говорилось вы¬ ше, процесс периодической архивации файлов целесообразно макси¬ мально автоматизировать. Для проведения архивации удобно создать соответствующий командный файл. Приведем пример такого командного файла ARCHIVE.BAT для архивации файлов диска, изображенного на рис. 11.10. Будем счи¬ тать, что архивные файлы, соответствующие каталогам DOC и WORK, располагаются на дискете с именем ARCHIVE1, а архивный файл, соответствующий каталогу USER, — на дискете с именем ARCHIVE2. В командном файле будет проверяться, вставлена ли пра¬ вильная дискета в дисковод А: (рис. 11.11). echo off echo Архивация каталогов DOC, USER, WORK echo и их подкаталогов echo * * * ARCHIVE1: echo Вставьте дискету ARCHIVE1 в дисковод А: pause if exist A:\DOC.ZIP goto DOC echo He та дискета на дисководе А:, нет A:\DOC.ZIP goto ARCHIVE1 DOC: if exist A:\WORK.ZIP goto WORK echo He та дискета на дисководе А:, нет A:\WORK.ZIP goto ARCHIVE1 WORK: pkzip -u -rpea4 -eb4 a:\doc c:\doc\*.* pkzip -u -rpea4 -eb4 a:\work c:\work\*.* ARCHIVE2: echo Вставьте дискету ARCHIVE2 в дисковод А: pause if exist A:\USER.ZIP goto USER echo He та дискета на дисководе А:, нет A:\USER.ZIP goto ARCHIVE2 USER: pkzip -u -rpea4 -eb4 a:\user c:\user\*.* Рис. 11.11. Командный файл ARCHIVE.BAT Предположим теперь, что суммарный размер файлов в каталоге USER и его подкаталогах стал таким большим, что соответствующий архивный файл перестал помещаться на одну дискету. Теперь на дис¬ кете ARCHIVE2 располагается архивный файл, соответствующий под¬ каталогу PETYA каталога USER, а на дискете ARCHIVE3 - архи¬ вный файл с копиями файлов из других подкаталогов каталога USER и из самого каталога USER. Тогда строки командного файла ARCHIVE.BAT от метки ARCHIVE2 до конца файла следует заменить на следующие:
Архивация файлов 143 ARCHIVE2: echo Вставьте дискету ARCHIVE2 в дисковод А: pause if exist A:\PETYA.ZIP goto PETYA echo He та дискета на дисководе А:, нет A:\USER.ZIP goto ARCHIVE2 PETYA: pkzip -i -rpea4 -eb4 a:\petya c:\user\petya\*.* ARCHIVE3: echo Вставьте дискету ARCHIVE3 в дисковод А: pause if exist A:\USER.ZIP goto USER echo He та дискета на дисководе А:, нет A:\USER.ZIP goto ARCHIVE3 USER: pkzip -i -rpea4 -eb4 a:\user c:\user\*.* Заметим, что в приведенном фрагменте командного файла при об¬ новлении архивных файлов используется режим —I, а не —U, так как при применении режима — U в архивный файл A:\USER.ZIP попадут и файлы из каталога C:\USER\PETYA. Командные файлы для извлечения файлов из архива. На той же дискете, на которой располагается архивный файл, удобно помещать и командный файл для восстановления файлов из архива. Этот ко¬ мандный файл может иметь то же имя, что и архивный файл, но с расширением .ВАТ. Можно также создавать один командный файл для восстановления файлов из нескольких архивных файлов, состав¬ ляющих архивную копию одного пакета программ. Использование командных файлов для восстановления файлов из архива имеет следующие преимущества: 1) восстановление файлов из архива перестает быть занятием, тре¬ бующим внимания и интеллектуальных усилий, оно сводится к вы¬ полнению командных файлов, находящихся на архивных дискетах; 2) значительно уменьшается вероятность ошибки при восстанов¬ лении файлов из архива. Приведем примеры командных файлов для восстановления файлов из архивов DOC.ZIF, PETYA.ZIP, WORK.ZIP и USER.ZIP, созданных командным файлом ARCHIVE.BAT в предыдущем пункте. DOC.BAT : pkunzip -dn a:\doc c:\doc PETYA.BAT : pkunzip -dn a:\petya c:\user\petya WORK.BAT : pkunzip -dn a:\work c:\work USER.BAT : pkunzip -dn a:\user c:\user В этих командных файлах режим —D позволяет восстанавливать также и фай¬ лы из подкаталогов указанных каталогов. Кроме того, при указании этого режи¬ ма автоматически создаются каталоги, в которые будут помещаться восстанавли¬ ваемые файлы, если эти каталоги не существуют. Режим —N препятствует случайному затиранию новых версий файлов на дис¬ ке старыми версиями этих файлов, сохраненных в архиве. Если новую версию файла на диске требуется заменить старой версией из архива, то надо будет сте¬ реть версию файла на диске, а потом восстановить файлы из архива.
144 Глава 12 Глава 12 ЗАЩИТА ОТ КОМПЬЮТЕРНОГО ВИРУСА Что такое компьютерный вирус Компьютерный вирус — это специально написанная небольшая по размерам программа, которая может ’’приписывать” себя к другим программам (т.е. ’’заражать” их), а также выполнять различные не¬ желательные действия на компьютере. Программа, внутри которой находится вирус, называется ’’зараженной”. Когда такая программа начинает работу, то сначала управление получает вирус. Вирус нахо¬ дит и ’’заражает” другие программы, а также выполняет какие-ни¬ будь вредные действия (например, портит файлы или таблицу разме¬ щения файлов на диске, ’’засоряет” оперативную память и т.д.). Эти действия выполняются достаточно быстро, и никаких сообщений при этом на экран не выдается, поэтому пользователь не сможет заме¬ тить, что на компьютере выполняются какие-то нежелательные дей¬ ствия. После этого вирус передает управление той программе, в кото¬ рой он находится, и она работает как обычно, т.е. так же, как неза- раженная версия этой программы. Тем самым внешне работа зара¬ женной программы выглядит так же, как и незараженной. Некото¬ рые разновидности вируса устроены так, что после первого запуска зараженной этим вирусом программы вирус остается постоянно (точ¬ нее, до перезагрузки MS DOS) в памяти компьютера и время от вре¬ мени заражает файлы и выполняет вредные действия на компьютере. Пока на компьютере заражено относительно мало программ, на¬ личие вируса в компьютере может быть практически незаметно. Од¬ нако по прошествии некоторого времени одни программы перестают работать, другие — начинают работать неправильно, на экран выво¬ дятся посторонние сообщения или символы и т.д. К этому моменту, как правило, уже достаточно много (или даже большинство) тех про¬ грамм, которыми Вы пользуетесь, являются зараженными вирусом, а некоторые файлы и диски — испорченными. Более того, зараженные программы с вашего компьютера могли быть уже перенесены с по¬ мощью дискет или по локальной сети на компьютеры ваших коллег и друзей. Таким образом, если не предпринимать мер по защите от вируса, то последствия заражения компьютера в'ирусом могут быть очень серьезными. Например, в начале 1989 г. вирусом, написанным одним американским студентом, были выведены из строя шесть тысяч ком¬ пьютеров министерства обороны США. Автор вируса был приговорен судом к трем месяцам тюрьмы и к штрафу в 270 тыс. дол. Для того чтобы программа-вирус была незаметной, она должна быть небольшой. Поэтому, как правило, программы-вирусы пишутся на языке ассемблера достаточно высококвалифицированными про¬ граммистами. Некоторые авторы таких программ создали их из озор¬ ства, не понимая всех последствий распространения вируса, некото¬ рые — из стремления ’’насолить” кому-либо (например, уволившей их
Защита от компьютерного вируса 145 фирме) или из ненависти ко всему роду человеческому. В любом слу¬ чае созданная программа-вирус может (потенциально) распростра¬ ниться на всех компьютерах, совместимых с тем, для которого она была написана, и причинить очень большие разрушения. Испорченные и зараженные вирусом файлы Компьютерный вирус может испортить, т.е. изменить ненадлежа¬ щим образом любой файл на имеющихся в компьютере дисках. Но некоторые виды файлов вирус может ’’заразить”. Это означает, что вирус может ’’внедриться” в эти файлы, т.е. изменить их так, что они будут содержать вирус, который при некоторых обстоятельствах мо¬ жет начать свою работу. Следует заметить, что тексты программ и документов, информа¬ ционные файлы баз данных, таблицы табличных процессоров и дру¬ гие аналогичные файлы не могут быть заражены вирусом. Вирус мо¬ жет их только испортить. Виды файлов, которые могут быть ’’заражены” вирусом, следующие: 1. Исполнимые файлы, т.е. файлы с расширениями имени .СОМ и .EXE. Вирус в зараженных исполнимых файлах начинает свою ра¬ боту при запуске той программы, в которой он находится. Наиболее опасно заражение вирусом командного процессора MS DOS — про¬ граммы COMMAND.COM, так как при его заражении вирус работает при выполнении любой команды MS DOS и любая выполняемая про¬ грамма- будет заражена (если вирус сможет ее заразить). 2. Драйверы устройств, т.е. файлы, указываемые в предложении Device файла CONFIG.SYS. Вирус, находящийся в них, начинает свою работу при каждом обращении к соответствующему устройству. 3. Объектные файлы и библиотеки, т.е. файлы с расширениями имени .OBJ и .LIB. Вирус, находящийся в этих файлах, начинает свою работу при запуске любой программы, собранной редактором связей LINK с использованием зараженных объектных файлов и биб¬ лиотек. 4. Загрузчик операционной системы и главная загрузочная за¬ пись жесткого диска. Вирус, поражающий эти области, как правило, состоит из двух частей, поскольку в данных небольших фиксирован¬ ных областях диска трудно разместить целиком программу вируса. Часть вируса, не помещающаяся в них, располагается в другом участке диска, который объявляется дефектным. Такой вирус начинает свою работу при начальной загрузке операционной системы и становится резидентным, т.е.. постоянно находится в памяти компьютера. 5. Файлы операционной системы MS DOS IO.SYS и MSDOS.SYS (или IBMBIO.COM и IBMDOS.COM). Заражение этих файлов представ¬ ляется маловероятным, хотя теоретически и возможным, так как они должны занимать непрерывную область на диске в начале той его части, которая отведена для размещения файлов. Поэтому для поме¬
146 Глава 12 щения вируса в эти файлы потребуется освободить место на диске, занимаемое другими файлами вслед за файлами IO.SYS и MSDOS.SYS, что достаточно сложно. Как правило, каждая конкретная разновидность вируса может за¬ ражать только один или два типа файлов. Чаще всего встречаются вирусы, заражающие .СОМ-файлы, на втором месте по распростра¬ ненности — вирусы, заражающие .ЕХЕ-файлы, и вирусы, заражаю¬ щие и .СОМ-файлы, и .ЕХЕ-файлы. Ранняя диагностика наличия вируса Раннее обнаружение вируса в файлах на диске основано на том, что при заражении и порче вирусом файлы изменяются, а при зара¬ жении, как правило, еще и увеличиваются в своем размере. Поэтому для проверки наличия вируса на том или ином диске можно выяс¬ нить, не изменились ли те файлы на диске, которые не должны изме¬ няться. Для проверки того, не изменился ли файл, вычисляется его конт¬ рольная сумма — некоторая специальная функция всего содержимого файла. Если контрольная сумма файла изменилась, то, разумеется, изменился и файл. С другой стороны, изменить файл так, чтобы его контрольная сумма осталась прежней, практически невозможно. Для вычисления контрольной суммы необходимо прочесть весь файл, а это относительно длительный процесс. Поскольку проверять компью¬ тер на наличие вируса желательно часто (лучше — при каждой на¬ чальной загрузке операционной системы MS DOS), то большое время проверки крайне нежелательно. Поэтому, как правило, при обычно производимой проверке на наличие вируса вычисление контрольной суммы производится только для нескольких особо важных файлов, а у остальных файлов проверяется только их размер, указанный в ка¬ талоге. Разумеется, такую проверку наиболее целесообразно произво¬ дить для файлов на жестком диске, если он имеется в компьютере. Опишем две программы для ранней диагностики компьютерного вируса - программы CRCLIST и CRCTEST. Исходные тексты упрощенных вариантов этих программ приведены в приложении 5 (полные варианты этих программ, которые диагностируют также и вирусы, поражающие загрузочный сектор или таблицу разделения диска, поставляются в составе комплекта документации и программ ’’Работа пользователя с персональным компьютером IBM PC”, распро¬ страняемым совместным предприятием ’’Интерквадро”, см. информа¬ цию в конце книги). Программа CRCLIST составляет список, содержащий имена фай¬ лов, их длины и контрольные суммы, а программа CRCTEST по этому списку проверяет, не изменились ли у файла длина или конт¬ рольная сумма. Каждая строка списка имеет вид имя-файла длина-файла контрольная-сумма-файла или имя-файла длина-файла (в последнем случае контрольная сумма не проверяется), например:
Защита от компьютерного вируса 147 C:\IO.SYS 22100 C:\MSDOS.SYS 30159 C:\COMMAND.COM 25276 C:\EXE\DOS\FORMAT.COM 11671 12579 7352 54037 62389 Для составления такого списка файлов следует выполнить про¬ грамму CRCLIST. Формат вызова программы: CRCLIST [CRC] [ALL] > имя-выходного-файла Если в команде указан параметр ALL, то в выходной файл выво¬ дятся данные о всех файлах текущего диска, иначе — о файлах с рас¬ ширениями .COM, .EXE, .SYS, .LIB, .OBJ, .TPL, .TPU, а также о всех файлах из корневого каталога текущего диска. Если указан параметр CRC, то программа выводит не только длины файлов, но и их контрольные суммы. В ходе своей работы программа CRCLIST выводит на экран ин¬ формацию о числе обработанных файлов и их общем размере (рис. 12.1). С:\> crclist crc all > c-disk.lst CRCLIST: Вывод длин и CRC файлов на текущем диске. (С) В.Э.Фигурнов, 1989. Обработано файлов: 53, байтов: 737878 Рис. 12.1. Вывод информации о длинах и контрольных суммах файлов Если программа CRCLIST вызвана без параметров или же ее пара¬ метры заданы неверно, то на экран выводится информация о формате вызова программы. Рекомендуется иметь два управляющих списка для программы CRCTEST. Один из них небольшой — предназначен для периодически выполняемой проверки. Другой список предназначен для проверки, которая выполняется, только если в компьютере появился вирус, чтобы узнать, какие файлы были испорчены вирусом. Для того чтобы получить первый управляющий список, следует выполнить программу CRCLIST без параметров CRC и ALL. Из полу¬ ченного списка файлов следует убрать с помощью редактора текстов строки, содержащие информацию о файлах, которые могут изменить¬ ся. В списке следует обязательно оставить файл командного процес¬ сора COMMAND.COM, желательно также оставить в нем файлы опе¬ рационной системы IO.SYS и MSDOS.SYS, несколько программ с рас¬ ширениями имени .СОМ и .EXE (лучше — наиболее часто используе¬ мые), драйверы устройств, указываемые в предложении Device файла CONFIG.SYS, а также некоторые объектные файлы и библиотеки объектных файлов, используемые имеющимися трансляторами с язы¬ ков программирования. Для нескольких наиболее важных файлов (например, драйверов устройств) в соответствующие строки файла можно вставить информацию о контрольной сумме. Для того чтобы получить второй управляющий список, следует выполнить программу CRCLIST с параметрами CRC и ALL и удалить из него с помощью редактора текстов строки, содержащие информа¬ цию о файлах, которые могут измениться.
148 Глава 12 Чтобы проверить, не изменились ли длины и контрольные суммы файлов, указанные в списке, необходимо выполнить команду CRCTEST имя-списка-файлов Желательно вставить вызов программы CRCTEST с указанием в качестве параметра имени небольшого списка файлов в командный файл AUTOEXEC.BAT, выполняемый при начальной загрузке MS DOS. Если длины и контрольные суммы у файлов, указанных в списке, изменились, то на экран выводится сообщение об этом (рис. 12.2) и предупреждение, что в компьютере может быть вирус. Чтобы при¬ влечь внимание к этому сообщению, оно сопровождается звуковым сигналом. С:\> crctest c-disk.lst CRCTEST: Проверка длин и контрольных сумм файлов. (С) В.Э.Фигурнов, 1989. C:\IO.SYS — контрольная сумма 12279, а должна быть 12579 C:\MSDOS.SYS — контрольная сумма 6786, а должна быть 7352 C:\COMMAND.COM - размер файла 25763, а должен быть 25276 ***** Внимание: в компьютере может быть вирус I!! ***** Рис. 12.2. Проверка длин и контрольных сумм файлов программой CRCTEST Если программа CRCTEST вызвана без параметров или же ее па¬ раметры заданы неверно, то на экран выводится информация о фор¬ мате вызова программы. При обнаружении несовпадения размера или контрольной суммы файла с величинами, указанными в управляющем списке, надо выяс¬ нить, не вызвано ли это несовпадение тем, что на диск была установ¬ лена новая версия соответствующего файла (программы). Если изме¬ нение размера или контрольной суммы файла связано с этим, то надо исправить длину или контрольную сумму файла в списке на ту вели¬ чину, которая указана в сообщении, выданном на экран. Если же причин для изменения размера или контрольной суммы файла нет, то скорее всего файл был испорчен или заражен компьютерным виру¬ сом. В этом случае целесообразно выполнить программу CRCTEST со вторым из описанных выше списков файлов. Это позволит опреде¬ лить, какие файлы были поражены вирусом. Чтобы в процессе про¬ верки не продолжать заражение компьютера, необходимо перед про¬ веркой перезагрузить компьютер с дискеты и запускать файл про¬ граммы CRCTEST, находящийся на дискете. Программы для обнаружения и удаления вируса Многие программисты и организации, оказавшись жертвами рас¬ пространения вируса, разрабатывают собственные программы для об¬ наружения и удаления вируса на своих компьютерах и дисках. Одна¬ ко в большинстве случаев можно найти уже разработанные програм¬ мы для обнаружения и уничтожения той версии вируса, заражению которой подвергся ваш компьютер.
Защита от компьютерного вируса 149 Обнаружение вируса основано на том, что каждая конкретная версия вируса, как и любая другая программа, содержит присущие только ей участки, т.е. комбинации байтов. Программы для обнару¬ жения вируса проверяют, имеется ли в файлах на указанном пользо¬ вателем диске специфическая для данного вируса комбинация байтов. При ее обнаружении в каком-либо файле на экран выводится соответ¬ ствующее сообщение. Зная о том, какие виды файлов заражает дан¬ ный вирус, можно ограничить проверку только файлами этих типов. Программы для удаления вируса, как и программы для обнаруже¬ ния вируса, просматривают файлы на диске с целью обнаружения в них вируса. С зараженными файлами программа выполняет (если это оказывается возможно) действия, обратные тем, которые производят¬ ся вирусом при заражении файла. Иначе говоря, делается попытка возвратить файлы в их исходное, ’’незараженное” состояние. Те фай¬ лы, которые не удалось восстановить, как правило, делаются нерабо¬ тоспособными или удаляются. Для каждого зараженного файла про¬ граммы удаления вируса выводят на экран сообщение о результатах его восстановления. Следует подчеркнуть, что действия, которые надо предпринять для обнаружения и удаления вируса, индивидуальны для каждой версии вируса. Как правило, программы для обнаружения и удаления вируса могут бороться только с одной версией вируса. Можно, разу¬ меется, написать программу, которая умела бы обнаруживать не¬ сколько заранее известных версий вируса, однако нельзя разработать такую программу, которая могла бы обнаруживать любой вирус. Поэ¬ тому надо иметь в виду, что возможно заражение вашего компьютера и такой разновидностью вируса, которая не обнаруживается доступ¬ ными программами для обнаружения и удаления вируса. Программы для защиты от вируса Одной из причин, из-за которых стало возможным такое явление, как компьютерный вирус, является отсутствие в операционной систе¬ ме MS DOS эффективных средств для защиты информации от несанк¬ ционированного доступа. Из-за отсутствия средств защиты компью¬ терные вирусы могут незаметно и безнаказанно изменять программы, портить таблицы размещения файлов и т.д. В связи с этим различными фирмами и программистами разрабо¬ таны программы, которые в определенной степени восполняют ука¬ занный недостаток MS DOS. Эти программы постоянно находятся в оперативной памяти (являются ’’резидентными”) и ’’перехватывают” все запросы к операционной системе MS DOS на выполнение различ¬ ных ’’подозрительных” действий, т.е. операций, которые используют компьютерные вирусы для своего ’’размножения” и для порчи инфор¬ мации в компьютере. Такими ’’подозрительными” действиями явля¬ ются в частности: ♦ изменение .СОМ- и .ЕХЕ-файлов; ♦ прямая запись на диск (запись по абсолютному адресу); ♦ форматирование диска; ♦ установка ’’резидентной” (постоянно находящейся в оператив¬ ной памяти) программы.
150 Глава 12 При каждом запросе на такое действие на экран компьютера вы¬ водится сообщение о том, какое действие затребовано и какая про¬ грамма желает его выполнить. Пользователь может либо разрешить выполнение этого действия, либо запретить его (рис. 12.3). A:\GAMES\TETRIS.COM хочет писать в C:\COMMAND.COM [YJ-можно или [NJ-нет Рис. 12.3. Запрос на разрешение выполнить ’’подозрительное” действие Если указанное в сообщении действие не нужно для выполнения данной программы (например, никакая программа не должна изме¬ нять командный процессор COMMAND.COM), то это действие следует запретить, так как оно скорее всего вызвано вирусом. Описанный способ защиты от вируса не лишен недостатков. Прежде всего резидентная программа для защиты от вируса постоян¬ но занимает какую-то часть оперативной памяти компьютера и тем самым уменьшает размер оперативной памяти, доступной другим программам. Это может быть нежелательно или даже неприемлемо для некоторых приложений. Кроме того, пользователь должен отве¬ чать на вопросы о том, разрешать или запрещать определенные дей¬ ствия на компьютере. При некоторых видах работ эти запросы могут выдаваться часто, что может надоесть пользователю. И наконец, имеются виды вирусов, работа которых не обнаруживается резидент¬ ными программами для защиты от вируса. Однако преимущества этого способа защиты от вируса весьма зна¬ чительны. Использование резидентных программ для защиты от ви¬ руса позволяет обнаружить компьютерный вирус на самой ранней стадии, когда он еще не успел размножиться и что-либо испортить. Тем самым можно свести убытки от компьютерного вируса к миниму¬ му. Большинство резидентных программ для защиты от компьютерно¬ го вируса могут завершить свою работу по команде пользователя (это может быть необходимо для запуска программ, которые требуют для своей работы много оперативной памяти). Поэтому целесообразно ис¬ пользовать резидентные программы для защиты от вируса либо по¬ стоянно, либо всегда, когда это возможно. Команду запуска программы для защиты от вируса удобно вклю¬ чить в файл AUTOEXEC.BAT (эта команда должна быть расположена там после всех команд для запуска других резидентных программ). При нехватке оперативной памяти для запуска какой-либо програм¬ мы работу программы для защиты можно завершить, а после оконча¬ ния работы программы, требовавшей много оперативной памяти, — запустить снова. Если Вы не уверены, что в тех программах, кото¬ рые выполнялись на компьютере в то время, в течение которого на нем не было защиты от вируса, не содержится компьютерного виру¬ са, то целесообразно на всякий случай перезагрузить MS DOS и запу¬ стить программу для ранней диагностики вируса, описанную ранее. В качестве примера резидентной программы для защиты от виру¬ са можно привести программу Anti4us ((C) 1988, Exact Automatisering B.V.). Название этой программы объясняется, очевид¬
Защита от компьютерного вируса 151 но, тем, что цифра 4 читается по-немецки и в родственных языках как ”фир”, поэтому название программы читается как ’’антивирус”. Программа Anti4us перехватывает все указанные ранее ’’подозри¬ тельные” действия, а также действия по изменению .ВАТ-файлов. При каждом запросе на такое действие на экран компьютера выво¬ дится сообщение об имени программы и о том, какое действие эта программа желает выполнить. При нажатии пользователем комбинации клавиш [Alt—4] на экран выводится меню, с помощью которого можно управлять тем, какие запросы на ’’подозрительные” действия требуют подтверждения поль¬ зователя, а какие — нет (по умолчанию все такие запросы требуют подтверждения). С помощью меню можно просматривать протокол работы *и записывать его на диск. В протокол вносятся сведения о всех ’’подозрительных” действиях программ, о запуске программ и открытии файлов. В меню также имеется пункт для окончания рабо¬ ты программы Anti4us. Защита программ с помощью запрета записи на диск Большинство пользователей знает о том, что запись на дискету можно запретить, заклеив на ней прорезь защиты от записи. Эта воз¬ можность широко используется многими пользователями для защиты информации на ’’эталонных” дискетах, содержащих архивные файлы, программы и данные, которые могут использоваться, но не должны меняться. Не все, однако, знают, что защитить файлы от записи можно и на жестком диске. Это можно сделать, если разбить с помощью специ¬ альных программ диск на несколько частей — логических дисков (см. главу ’’Конфигурирование системы”). Каждый логический диск, кото¬ рый доступен операционной системе MS DOS, имеет собственное обоз¬ начение (С:, D:, Е: и т.д.), и для пользователя работа с логическим диском ничем не отличается от работы с каким-либо другим диском. Если на жестком диске имеется несколько логических дисков, до¬ ступных операционной системе MS DOS, то некоторые из них могут быть сделаны доступными только для чтения, т.е. программы и дан¬ ные на этом логическом диске будут защищены от изменения, в част¬ ности от заражения или порчи вирусом. Защиту от записи на логический диск можно установить и снять в любой момент времени. В частности, можно записать программы и данные, которые не требуется изменять, на некоторый логический диск и установить на нем защиту от записи. Если затем потребуется записать на этот диск какие-то новые файлы или изменить существу¬ ющие файлы, то нужно будет снять защиту от записи с диска, сде¬ лать нужные действия с диском, а затем снова установить защиту от записи на диск. Если Вы заранее знаете (хотя бы приблизительно), какую часть жесткого диска могут занимать программы и данные, которые будут только использоваться, но не изменяться, то целесообразно разбить жесткий диск на два логических диска, один из которых предназна¬ чен для хранения изменяемых программ и данных, а другой с защи¬
152 Глава 12 той от записи — для хранения программ и данных, которые будут ис¬ пользоваться, но не изменяться. При этом файлы на втором логиче¬ ском диске не смогут быть изменены вирусом или какой-либо другой программой, а также каким-либо пользователем до тех пор, пока с логического диска не снята защита от записи. Такой способ значи¬ тельно облегчает защиту компьютера от вируса и уменьшает ущерб при заражении вирусом. Действия при заражении компьютера вирусом Если Вы используете резидентную программу для защиты от ви¬ руса (типа программы Anti4us), то наличие вируса в какой-либо про¬ грамме можно обнаружить на самом раннем этапе, когда вирус не ус¬ пел еще заразить другие программы и испортить какие-либо файлы. В этом случае следует перезагрузить MS DOS с дискеты и удалить за¬ раженную программу, а затем попытаться достать или создать неза- раженную версию этой программы. Для проверки того, что вирус не испортит каких-то других файлов, следует запустить программу для ранней диагностики вируса, желательно с широким списком проверя¬ емых файлов. Чтобы в процессе проверки не продолжать заражение компьютера, следует запускать файл программы ранней диагностики вируса, находящийся на дискете. Далее будет рассматриваться более сложный случай, когда вирус уже успел заразить или испортить какие-то файлы на дисках компь¬ ютера. Первым действием при обнаружении наличия в компьютере виру¬ са, как указывалось выше, должна быть перезагрузка операционной системы MS DOS с заранее подготовленной эталонной дискеты. Эта дискета, как и другие дискеты, используемые при ликвидации по¬ следствий заражения компьютерным вирусом, должна быть снабжена наклейкой для защиты от записи, чтобы вирус не смог заразить или испортить файлы на этих дискетах. Кроме того, следует запустить ре¬ зидентную программу для защиты от вируса, если такая программа у Вас имеется. Это позволит ликвидировать последствия заражения ви¬ русом с наименьшими потерями. Если для вашего компьютера имеется программа для установки конфигурации SETUP (для моделей IBM PC АТ и PS/2 она имеется всегда), то следует запустить эту программу и проверить, правильно ли установлены параметры конфигурации компьютера (они могли быть испорчены вирусом). Если эти параметры установлены непра¬ вильно, то следует их переустановить. После этого очень полезно определить, имеются ли для того виру¬ са, которым заражен компьютер, программы для его обнаружения и уничтожения. Если такие программы будут найдены, то это может уменьшить потери от заражения компьютера вирусом. Чтобы найти нужную программу, необходимо поочередно запускать имеющиеся в Вашем распоряжении программы для обнаружения и уничтожения вирусов для проверки того диска, на котором находятся зараженные вирусом файлы, Если какая-либо из этих программ сообщит о том, что она нашла вирус, то ее надо использовать в процессе устранения последствий заражения компьютера вирусом, как это описано далее.
Защита от компьютерного вируса 153 В том случае, когда Вы точно знаете, что некоторый файл зара¬ жен вирусом, то можно значительно ускорить проверку годности программ для обнаружения и уничтожения вирусов. Для этого следу¬ ет скопировать заражённый файл на отдельную дискету и проверять программы для обнаружения и уничтожения вирусов на этой диске¬ те. Найти файл, зараженный вирусом, можно с помощью программы для ранней диагностики вируса: те файлы, у которых увеличился размер, скорее всего заражены вирусом. Далее следует последовательно обезвредить все диски, которые могли подвергнуться заражению вирусом. Заметим, что если жесткий диск в компьютере разделен на несколько логических дисков, то при загрузке с дискеты будет доступен только один логический диск — тот, с которого загружается операционная система MS DOS. В этом случае следует сначала обезвредить логический диск, с которого за¬ гружается MS DOS, а затем загрузиться с жесткого диска и обезвре¬ дить остальные логические диски. Если на диске нет нужных файлов, копий которых нет в архиве, то проще всего заново отформатировать диск, а затем восстановить все файлы на этом диске с помощью архивных копий. Предположим теперь, что на диске имеются нужные файлы, копий которых нет в архиве. Для определенности мы будем в примерах считать, что этот диск находится на дисководе В: . Необходимо выполнить следующие действия. 1. Проверить целостность файловой системы на диске с помощью программы chkdsk: chkdsk b: /f Если повреждения файловой системы значительны, то целесооб- разно скопировать с диска все нужные файлы, копий которых нет в архиве, на дискеты и заново отформатировать диск. 2. Удалить с диска все ненужные файлы, а также файлы, копии которых имеются в архиве. Те файлы, которые не были изменены ви¬ русом (это можно установить с помощью программы для ранней диаг¬ ностики вируса), удалять не обязательно. Ни в коем случае нельзя оставлять на диске .СОМ-и .ЕХЕ-файлы, для которых программа для ранней диагностики вируса сообщает, что они были изменены. Те .СОМ- и .ЕХЕ-файлы, о которых не изве¬ стно, изменены они вирусом или нет, следует оставлять на диске только при самой крайней необходимости. 3. Если диск, который Вы обрабатываете, является системным (т.е. с него можно загрузить операционную систему MS DOS), то на него следует заново записать загрузочный сектор и файлы операционной системы. Это можно сделать командой SYS. 4. Если у Вас имеется программа для уничтожения данной версии вируса, то следует выполнить ее для данного диска. Зараженные фай¬ лы, которые программа для уничтожения вируса не смогла восстано¬ вить, следует уничтожить. Разумеется, если на диске остались толь¬ ко те файлы, которые не могут заражаться вирусом (например, ис¬
154 Глава 12 ходные тексты программ и документы), то программу для уничтоже¬ ния вируса для данного диска выполнять не надо. 5. С помощью архивных копий следует восстановить файлы, раз¬ мещавшиеся на дискетах. 6. Если Вы не уверены полностью, что в архиве не было заражен¬ ных файлов, и у Вас имеется программа для уничтожения той версии вируса, которой был заражен компьютер, то следует еще раз выпол¬ нить эту программу для диска. Если на диске будут обнаружены за¬ раженные файлы, то те из них, которые программа для уничтожения вируса смогла восстановить, надо скопировать в архив, а остальные — удалить с диска и из архива. Такой обработке следует подвергнуть все диски, которые могли быть заражены или испорчены вирусом. Рекомендуется после заражения компьютера вирусом некоторое время работать только при запущенной резидентной программе для защиты от вируса, если такая программа у Вас имеется. Профилактика против заражения вирусом В настоящем разделе описываются меры, которые позволяют уменьшить вероятность заражения компьютера вирусом, а также све-. сти к минимуму ущерб от заражения вирусом, если оно все-таки про¬ изойдет. Вы можете, конечно, использовать не все описываемые сред¬ ства для профилактики против заражения вирусом, а только те, ко¬ торые Вы считаете необходимыми. 1. Следует заклеивать на дискетах с файлами, которые не надо изменять, прорезь защиты от записи. На жестком диске целесообраз¬ но создать логический диск, защищенный от записи, и поместить на него программы и данные, которые надо только использовать, но не изменять. 2. Целесообразно использовать резидентные программы для защи¬ ты от вируса либо постоянно, либо всегда, когда это возможно. 3. Желательно вставить вызов программы для ранней диагности¬ ки наличия вируса с указанием в качестве параметра небольшого спи¬ ска файлов в командный файл AUTOEXEC.BAT, выполняемый при начальной загрузке MS DOS. 4. Необходимо периодически архивировать те файлы, которые Вы создавали или изменяли. Перед архивацией файлов целесообразно выполнить программу для ранней диагностики наличия вируса, что¬ бы избежать помещения испорченных или зараженных файлов в ар¬ хив. 5. Не следует переписывать программное обеспечение с других компьютеров, так как оно может быть заражено вирусом. Автор не считает возможным вдаваться здесь в обсуждение моральных и юри¬ дических аспектов нелегального копирования программ, однако он хочет заметить, что распространяемые производителями программно¬ го обеспечения ’’фирменные” дискеты с программами, как правило, не содержат вирусов.
Защита от компьютерного вируса 155 6. После того как Вы получите или разработаете какой-либо про¬ граммный продукт или документ,, следует сделать эталонную архи¬ вную копию соответствующих файлов, с помощью которой можно было бы легко восстановить эти файлы при поражении компьютера вирусом. 7. Если Вы хотите работать с какой-то новой для себя програм¬ мой, в которой может оказаться вирус, то перед работой с ней следу¬ ет обеспечить, чтобы на компьютере была запущена резидентная про¬ грамма для защиты от вируса. В том случае, когда та программа, с которой Вы хотите работать, и резидентная программа для защиты от вируса не помещаются одновременно в оперативной памяти, следу¬ ет провести архивацию всех измененных файлов, окончить работу программы для защиты от вируса, запустить программу, с которой Вы хотите работать, а по ее окончании перезагрузить MS DOS, снова запустить резидентную программу для защиты от вируса и выпол¬ нить программу для ранней диагностики наличия вируса. 8. Не следует допускать к работе на компьютере без присмотра посторонних лиц, особенно если они имеют свои дискеты. Очень ча¬ сто причиной заражения компьютера вирусом являлась принесенная на дискете компьютерная игра, в которую кто-то поиграл 10—15 мин на компьютере. В том случае, если избежать доступа случайных лиц к компьютеру невозможно (например, в учебном центре), целе¬ сообразно все или почти все программы, находящиеся на жестком ди¬ ске компьютера, располагать на логическом диске, защищенном от записи. 9. Если компьютер имеет жесткий диск, необходимо всегда иметь в доступном месте ’’системную” дискету, т.е. дискету, с которой мож¬ но загрузить операционную систему MS DOS. На этой дискете не должны находиться все программы, входящие в состав операционной системы MS DOS, но на ней должны быть программы FORMAT, LABEL, SYS, CHKDSK, а также часто используемые программы для обслуживания файловой системы на диске, например DT и QU (см. гл. 5), резидентная программа для защиты от вируса и программа для ранней диагностики вируса. Если Вы привыкли работать с каки¬ ми-то программами-оболочками типа программы Norton Commander, то их также следует скопировать на эту дискету. Кроме того, на эту дискету следует обязательно записать программу для установки пара¬ метров конфигурации компьютера (такая программа может называть¬ ся SETUP, SETUP1, ATSETUP и т.п.), если такая программа имеется в комплекте программ, поставляемых с компьютером. 10. Следует собирать программы для обнаружения и уничтожения различных компьютерных вирусов. Эти программы также следует по местить на дискету, которая должна храниться в доступном месте.
156 Глава 13 Глава 13 КОНФИГУРИРОВАНИЕ СИСТЕМЫ Для облегчения работы пользователя с компьютером IBM PC целесообразно настроить систему таким образом, чтобы установить удобную для работы среду. Для осуществления необходимой настрой¬ ки операционная система MS DOS предоставляет различные средства конфигурирования системы. В настоящей главе описываются эти средства и даются советы по их применению. Порядок изложения со¬ ответствует последовательности действий, выполняемых при конфи¬ гурировании компьютера, на который еще не записаны никакие фай¬ лы, кроме операционной системы MS DOS и нескольких других про¬ грамм. Параграфы настоящей главы не зависят друг от друга, поэто¬ му любой из них можно опустить без ущерба для понимания дальней¬ шего текста. Копирование файлов с жесткого диска Как правило, фирмы-поставщики компьютеров поставляют ком¬ пьютеры с жестким диском, записав на жесткий диск операционную систему MS DOS и некоторые другие программы (например, драйверы клавиатуры и принтера или транслятор языка BASIC). Все остальные программы пользователь должен установить на жесткий диск сам. Перед тем как записывать на жесткий диск какие-то другие про¬ граммы, желательно скопировать с него операционную систему MS DOS и другие программы на дискеты. Эти дискеты можно будет ис¬ пользовать при повреждении файлов операционной системы на жест¬ ком диске и в тех случаях, когда компьютер не загружается с жест¬ кого диска (например, при повреждении информации в постоянной памяти компьютера). Перед копированием файлов с жесткого диска на дискеты целесо¬ образно включить режим проверки записи на диск. Это позволит из- бежать создания неправильных копий файлов на дискетах. Режим проверки записи на диск включается командой verify on. После окон¬ чания копирования файлов на дискеты этот режим можно выключить командой verify off. Для того чтобы скопировать основные файлы операционной систе¬ мы, надо ввести следующие команды (мы будем предполагать, что жесткий диск обозначается С:). С: SYS А: COPY COMMAND.COM А: Если ваш компьютер имеет дисковод для дискет емкостью 1,2 Мбайта (размером 5,25 дюйма) или 1,4 Мбайта (размером 3,5 дюй¬ ма), то лучше скопировать все файлы с жесткого диска на такую дис¬ кету. В этом случае все файлы с жесткого диска поместятся на одну дискету. Копирование всех файлов с жесткого диска на дискету мож¬ но выполнить командой
Конфигурирование системы 157 XCOPY С:\* * A: /S /Е Следует заметить, что иногда в поставленной вместе с компьюте¬ ром версии операционной системы MS DOS программа XCOPY отсут¬ ствует. В этом случае файлы из каждого каталога на жестком диске можно скопировать командой COPY в соответствующий каталог на дискете. На дискету с операционной системой MS DOS целесообразно так¬ же скопировать часто используемые программы для обслуживания файловой системы на диске, например программы DT и QU, входя¬ щие в комплекс программ Norton Utilities, а также резидентную про¬ грамму для защиты от вируса (см. гл. ’’Защита от вируса”). Если Вы привыкли работать с какими-то программами-оболочками типа про¬ граммы Norton Commander, то их также следует скопировать на эту дискету. Если ваш компьютер не имеет дисководов для дискет большой ем¬ кости, то файлы с жесткого диска не поместятся на одну дискету. Целесообразно поместить на одну дискету наиболее часто используе¬ мые программы операционной системы MS DOS, в частности про¬ граммы FORMAT, LABEL, SYS, CHKDSK, а также программы, ука¬ занные в предыдущем абзаце. Кроме того, на эту дискету следует обязательно записать программу для установки параметров конфигу¬ рации компьютера (такая программа может называться SETUP, SETUP1, ATSETUP и т.п.), если такая программа имеется в комплек¬ те программ, поставляемых с вашим компьютером. Остальные фай¬ лы, находящиеся на жестком диске, следует скопировать на другие дискеты. Целесообразно на каждую из этих дискет поместить и ко¬ мандный процессор MS DOS — файл COMMAND.COM, чтобы при ра¬ боте с этими дискетами не выдавалось сообщения, требующего вста¬ вить дискету с файлом COMMAND.COM. После того как все файлы с жесткого диска будут скопированы на дискеты, следует заклеить на этих дискетах прорезь защиты от запи¬ си, чтобы скопированные файлы не могли быть случайно изменены или испорчены. Целесообразно также сделать копии этих дискет и хранить вторые экземпляры дискет отдельно от первых экземпляров, чтобы уменьшить вероятность порчи дискет при каком-либо несчаст¬ ном случае. Разбиение жесткого диска После копирования файлов с жесткого диска на дискеты можно при необходимости разбить жесткий диск на несколько частей — ло¬ гических дисков. При разбиении жесткого диска на несколько логи¬ ческих дисков на компьютере можно одновременно использовать две операционные системы, например MS DOS и UNIX (XENIX). Каждый логический диск, который доступен операционной системе MS DOS, имеет собственное обозначение (С:, D:, Е: и т.д.), и для пользователя работа с логическим диском ничем не отличается от работы каким- либо другим диском.
158 Глава 13 Разбиение жесткого диска на части можно сделать и впоследст¬ вии, но тогда придется сохранять все файлы с жесткого диска на дис¬ кетах, а потом копировать эти файлы с дискет на жесткий диск. Необходимость в разбиении жесткого диска на части может быть вызвана следующими причинами. 1. Для обеспечения сохранности и защиты от вируса программ и данных, которые Вы используете, но не изменяете, желательно защи¬ тить эти программы и данные от изменения. Если бы эти программы или данные находились на дискетах, то можно было бы заклеить на дискетах прорезь защиты от записи. На жестком диске такого средст¬ ва для защиты от записи не имеется. Однако при разбиении жесткого диска на логические диски можно сделать любой логический диск, кроме того, с которого загружается операционная система MS DOS, защищенным от записи. Защиту от записи на логический диск можно установить и снять в любой момент времени. В частности, можно за¬ писать на логический диск программы и данные, которые не требует¬ ся каким-либо образом изменять, а затем установить на этом диске защиту от записи. Если затем потребуется записать на этот диск ка¬ кие-то новые файлы либо удалить или изменить существующие фай¬ лы, то нужно будет снять защиту от записи с диска, сделать нужные действия, а затем снова установить защиту от записи на диск. 2. С помощью разбиения жесткого диска на несколько частей на компьютере можно одновременно использовать несколько операцион¬ ных систем, например MS DOS и UNIX (XENIX). Как правило, в ру¬ ководстве по установке на компьютер IBM PC операционных систем, отличных от MS DOS, указывается, как можно разбить жесткий диск на части, одна из которых будет доступна данной операционной сис¬ теме, а другая — MS DOS. 3. Если на одном компьютере должны работать несколько пользо¬ вателей или групп пользователей, то может оказаться целесообраз¬ ным разбить жесткий диск на этом компьютере на несколько частей, чтобы каждому пользователю или каждой группе пользователей был выделен свой логический диск для размещения файлов. Такой под¬ ход, как правило, приводит к значительному уменьшению числа кон¬ фликтов, связанных с недостатком места на диске или уничтожением ’’чужих” файлов. 4. Если на компьютере установлен жесткий диск емкостью более 32 Мбайт или ’’нестандартный” жесткий диск, т.е. диск типа, не пре¬ дусмотренного в операционной системе MS DOS, то при непосредст¬ венном использовании такого жесткого диска возможно существен¬ ное недоиспользование емкости диска. Один из способов избежать этого — разбиение диска на несколько частей. Если диск имеет ’’не¬ стандартное” число головок, то начальную часть диска, с которой происходит загрузка MS DOS, приходится делать минимального раз¬ мера, чтобы сократить потери емкости диска. Разбиение жесткого диска на несколько частей производится спе¬ циальными программами. В качестве примера такой программы мож¬ но привести Disk Manager фирмы OnTrack Computer Systems. Про¬ грамма Disk Manager позволяет в интерактивном режиме разбивать
Конфигурирование системы 159 диск на несколько частей, выбирать параметры файловой системы на логических дисках, форматировать логические диски и проверять их на наличие дефектных участков, переписывать на них операционную систему MS DOS и т.д. Если на жестком диске имеется несколько логических дисков, до¬ ступных операционной системе MS DOS, то с одного из них произво¬ дится загрузка MS DOS. Этот логический диск всегда доступен и для чтения, и для записи. Остальные логические диски могут быть до¬ ступны для чтения и записи или только для чтения. Для того чтобы с этими дисками можно было работать, необходимо включить в файл CONFIG.SYS строку device = имя-файла-драйвера-логического-диска Пример: device=C:\EXE\SYS\HARDRIVE.SYS Если разбиение жесткого диска на несколько частей выполняется для того, чтобы на компьютере можно было использовать совместно с MS DOS какую-то другую операционную систему, то для выполнения разбиения следует использовать программы, указанные в руководстве по установке на компьютер IBM PC этой операционной системы. Размещение файлов на жестком диске При использовании дискет, как правило, не приходится задумы¬ ваться о том, каким образом следует разместить на них файлы. Чаще всего все файлы на дискете записываются в корневой каталог, иногда создается несколько каталогов для хранения отдельных групп фай¬ лов. Более сложные структуры каталогов на дискетах используются редко, так как на дискетах не помещается такого количества файлов, при которых простейшие структуры дерева каталогов являлись бы недостаточными. При работе с жестким диском ситуация совершенно другая. На жестком диске можно поместить сотни и тысячи файлов, и без про¬ думанной схемы размещения этих файлов по каталогам разбираться в этих файлах было бы крайне трудно. Кроме того, имеется еще одна причина, из-за которой следует стремиться рассредоточить файлы на жестком диске по различным каталогам. Дело в том, что при разме¬ щении в одном каталоге большого количества файлов MS DOS будет затрачивать много времени на поиск в этом каталоге нужных файлов. Замедление доступа к файлам начинает ощущаться при 50—100 фай¬ лах в каталоге, а при размещении двухсот файлов в каталоге доступ к файлам занимает несколько секунд. Наиболее целесообразно позаботиться, чтобы не было большого количества файлов и подкаталогов в корневом каталоге диска, по¬ скольку поиск программ и файлов часто начинается с корневого ката¬ лога. Обычно рекомендуется, чтобы в корневом каталоге находилось минимальное число файлов и подкаталогов. Это не только ускоряет работу с диском, но и облегчает ориентировку в файловой системе на диске. Полезно руководствоваться таким правилом: в корневом катало¬ ге жесткого диска, с которого загружается операционная система
160 Глава 13 MS DOS, должны находиться только те файлы, которые не могут находиться в каком-либо другом месте. Такими файлами являются файлы операционной системы MSDOS.SYS и IO.SYS (или IBMDOS.COM и IBMBIO.COM), файлы AUTOEXEC.BAT и CONFIG.SYS. При использовании программ Norton Commander и NCD в корневом каталоге диска могут находиться также файлы NC.MNU и TREEINFO.NCD. Кроме этих файлов, в корневом каталоге диска должны находить¬ ся подкаталоги для используемых пакетов программ, для исполни¬ мых файлов общего назначения, для пользователей или групп пользо¬ вателей, а также определенных видов работ и т.д. Следует стремить¬ ся, чтобы число подкаталогов, находящихся непосредственно в кор¬ невом каталоге, было не слишком велико. Если число подкаталогов в корневом каталоге получается большим, то можно сделать несколько каталогов аналогичного назначения подкаталогами одного каталога. Приведем несколько рекомендаций по размещению файлов на же¬ стком диске. 1. Все файлы, относящиеся к какому-то одному комплексу (паке¬ ту программ), следует размещать в одном каталоге и его подкатало¬ гах. 2. Как правило, не следует помещать в одном каталоге файлы, от¬ носящиеся к разным комплексам (пакетам программ). 3. Не следует помещать в одном каталоге файлы, которые Вы ис¬ пользуете, но не изменяете, и файлы, которые Вы изменяете или мо¬ жете изменить. Это облегчит процесс архивации файлов. 4. Все исполнимые файлы и командные файлы общего назначения желательно помещать в одном каталоге и нескольких (не более двух- трех) его подкаталогах. Эти каталоги следует указать в команде MS DOS Path при написании файла AUTOEXEC.BAT. В этих каталогах можно помещать также командные файлы для вызова различных прикладных программ. 5. Если Вам понадобится выполнить на компьютере какой-то но¬ вый вид работ, то лучше создать новый каталог для проведения этих работ и размещения соответствующих файлов. Написание файла CONFIG.SYS В корневом каталоге жесткого диска, с которого загружается опе¬ рационная система, может находиться файл CONFIG.SYS, задающий параметры операционной системы MS DOS, а также указывающий, какие программы, расширяющие возможности операционной систе¬ мы, необходимо загружать в оперативную память (эти программы на¬ зываются драйверами устройств, хотя они не обязаны управлять ра¬ ботой каких-либо устройств). Файл CONFIG.SYS должен представлять собой текстовый (ASCII) файл. Каждая строка этого файла имеет вид имя-команды = значение
Конфигурирование системы 161 Ниже перечисляются наиболее часто используемые команды фай¬ ла CONFIG.SYS: Break = on — установить режим проверки нажатия [Ctrl—Break] при операциях ввода-вывода с диском. Это позволяет прерывать вы¬ полнение программ, которые иначе бы выполнялись до своего завер¬ шения; Buffers = число-буферов — установка числа буферов для опера¬ ций ввода-вывоца с диском. Для IBM PC без жесткого диска рекомен¬ дуется использовать 4--5 буферов, для IBM PC XT с жестким диском емкостью 10—20М — 15—20 буферов, для IBM PC АТ с жестким дис¬ ком 20—40М — 30—40 буферов; Country = 049 (для MS DOS версий до 3.2), Country = 049,437,полное-имя-файла-СОиМТВУ.8¥8 (для MS DOS версий, начиная с 3.3) — установка удобного формата выдачи ин¬ формации о дате и времени; Files = 20 — установка максимального числа одновременно откры¬ тых файлов. Многие программы требуют для своего выполнения, что¬ бы значение параметра FILES было не менее 20; Shell = COMMAND.COM /Е:число-байтов /Р — увеличение разме¬ ра области памяти, в которой хранятся переменные окружения. Чис¬ ло байтов задает размер этой области. Если размер области памяти для хранения переменных окружения недостаточен, то MS DOS выда¬ ет сообщение: ’’Out of environment space”; Device = имя-файла-драйвера [параметры] — установка драйвера устройства. Например, если файлы драйверов находятся в каталоге C:\EXE\SYS, то команда device = C:\EXE\SYS\ANSI.SYS установит драйвер ANSI.SYS, расширяю¬ щий возможности по выводу на экран и позволяющий переопределять значения клавиш на клавиатуре; device = C:\EXE\SYS\VDISK.SYS размер—диска [/Е] - ус¬ тановит ’’электронный” диск. Размер диска задается в килобайтах. Параметр /Е указывает, что ’’электронный” диск должен размещаться в расширенной памяти процессора Intel-80286 или 80386 (сверх 640К). Пример файла CONFIG.SYS. Break = on Files = 20 Buffers = 16 Shell = COMMAND.COM /Е:512 /Р Device = C:\EXE\SYS\ANSI.SYS Device = C:\EXE\SYS\HARDRIVE.SYS Device = C:\EXE\SYS\MOUSE.SYS Device = C:\EXE\SYS\VDISK.SYS 384 /Е Написание файла AUTOEXEC.BAT При начальной загрузке операционная система MS DOS ищет в корневом каталоге того диска, с которого она загружается, файл AUTOEXEC.BAT. Если этот файл будет найден, то он выполняется. В командный файл AUTOEXEC.BAT удобно записать команды, которые должны выполняться каждый раз при начальной загрузке операцион¬
162 Глава 13 ной системы. Эти команды могут осуществить необходимую настрой¬ ку операционной системы и установить удобное для работы окруже¬ ние. Кроме того, при наличии файла AUTOEXEC.BAT операционная система не задает в процессе начальной загрузки вопросов о текущей дате и времени. Установка списка каталогов, в которых производится поиск вы¬ полняемых программ. С помощью команды MS DOS path в файле AUTOEXEC.BAT можно установить, в каких каталогах будет произ¬ водиться поиск выполняемых программ. Поиск в этих каталогах бу¬ дет выполняться тогда, когда пользователь введет имя команды без указания, в каком каталоге находится соответствующая программа. Формат команды: path список-имен-каталогов Имена каталогов в списке должны разделяться точкой с запятой. Поиск выполняемых программ будет производиться сначала в теку¬ щем каталоге, а затем в каталогах, указанных в команде path. В списке каталогов, указанном в команде path, следует перечис¬ лить те каталоги, в которых находятся исполнимые программы обще¬ го назначения. В списке каталогов целесообразно указать каталоги .. и ..\.. , это позволит выполнять любую программу из подкаталогов первого и второго уровня того каталога, в котором она находится. Если корневой каталог того диска, с которого загружается опера¬ ционная система MS DOS, не входит в список каталогов, указанных в команде path, то следует создать копию файла командного процессо¬ ра MS DOS COMMAND.COM в одном из каталогов, указанных в ко¬ манде path. Это позволит использовать команду COMMAND, не ука¬ зывая, где находится файл COMMAND.COM. Много каталогов в команде path указывать нежелательно, так как это приведет к длительному поиску нужной команды на диске. В большинстве случаев вместо включения имени каталога с тем или иным пакетом прикладных программ в список каталогов команды path предпочтительнее создать в одном из каталогов, указанных в ко¬ манде path, командный файл для вызова данного пакета прикладных программ. Пример path = c:\exe;c:\exe\dos;c:\exe\nu;c:\tc;..;..\.. Установка формата приглашения MS DOS. С помощью команды MS DOS prompt можно изменять формат приглашения, показываю¬ щего, что MS DOS готова к приему команд пользователя. Формат ко¬ манды: prompt текст-приглашёния В тексте, указываемом в команде prompt, можно использовать специальные сочетания символов, которые имеют следующие значе¬ ния: $р - текущий дисковод и каталог; $п — текущий дисковод; $d — текущая дата;
Конфигурирование системы 163 $t - текущее время; $h — удаление предыдущего символа; $е — символ с кодом 27 (ESC); $g — символ ”>”. Имеются и другие специальные сочетания символов, но они применяются редко. Остальные символы, указанные в тексте, являющемся парамет¬ ром команды prompt, переносятся в приглашение MS DOS без изме¬ нения. Чаще всего используются следующие форматы приглашения MS DOS. prompt $p$g — устанавливает приглашение MS DOS, содержащее информа¬ цию о текущем каталоге и символ ”>”, например C:\WORK\DOC> . prompt $t $p$g - устанавливает приглашение MS DOS, содержащее информа¬ цию о времени суток, о текущем каталоге и символ ”>”, например 13:05:43.56 C:\WORK\DOC> . Многим пользователям такое приглашение кажется слишком длинным. Они убирают из него информацию о секундах и сотых долях секунды. Для удаления символа в приглашении используется сочетание символов $h: prompt $t$h$h$h$h$h$h $p$g Вид приглашения MS DOS получается: 13:05 C:\WORK\DOC> . Если при запуске операционной системы был установлен драйвер ANSI.SYS. (для этого в файле конфигурации CONFIG.SYS должна быть строка вида device = имя-каталогахапБЕзуз ), то в приглашении MS DOS можно использовать различные цвета символов и фона. Для этого в команде Prompt следует задать управляющие последователь¬ ности драйвера ANSI.SYS: $е[<атрибут>;... ;<атрибут>т Значения атрибутов задаются десятичными числами. Если в ко¬ манде указано несколько атрибутов, то они разделяются точками с запятой. Значения атрибутов могут быть таковы: 0 — обычные сим¬ волы (белые на черном фоне), 1 — символы повышенной яркости, 5 — мигающие символы, 7 — инверсное изображение (черные символы на белом фоне), 8 — невидимые символы (цвет символа совпадает с цветом фона), 30—37 — черный,, красный, зеленый, коричневый, синий, голубой и белый цвета символов, 40—47 — черный, красный, зеленый, коричневый, синий, голубой и белый цвета фона. Например, чтобы получить желтый цвет символов, надо использовать коман¬ ду $е[33;1т . С помощью таких команд можно выделять отдельные части пригла¬ шения различными цветами. Например, команда prompt $e[7m$p$e[0m$g выво¬ дит имена текущего дисковода и текущего каталога в инверсионном изображении (на монохромном дисплее), а остальной текст выводится в обычном изображении. Команда I prompt $e[36m$t$h$h$h$h$h$h $e[35m$p$e[32m$g$e[0m выводит в приглашении текущее время голубым цветом, текущий каталог — сире¬ невым цветом, а символ ”>” — зеленым цветом. С помощью команд драйвера ANSI.SYS можно вывести часть при¬ глашения в другом месте экрана. Например, можно вывести инфор¬ мацию о текущем времени в правом верхнем углу экрана. Для опре- 6*
164 Глава 18 деления приглашения MS DOS такого вида можно воспользоваться следующими командами: $e[s - запоминание текущей позиции кур¬ сора; $е[и — установка курсора в позицию, которая была запомнена с помощью выдачи управляющей последовательности $e[s ; $е[<стро- ка>;<столбец>Н - установка курсора на данную строку и столбец. Например, команда prompt $e[s$e[l;52H$e[44;33;lm $t $d $e[0;35m$e[u$p$e[32m$g$e[0m выводит в правом верхнем углу экрана желтыми буквами на синем фоне текущее время и дату, затем возвращается в текущую строку и выводит там сиреневым цветом имя текущего каталога, а зеленым цветом - символ Для наглядности опишем действие этой команды подробнее. $e[s - запоминание текущего положения курсора; $е[1;52Н - установка курсора в 52-ю позицию первой строки экрана; $е[44;33;1ш - установка желтого цвета букв и синего фона; $t $d — вывод текущего времени и даты (чтобы выводимая информация имела красивый вид, до $t в команде имеется один пробел, между $t и $d - два, и после $d - один пробел); $е[0;35ш - отмена повышенной яркости символов и установка сиреневого цвета символов и черного фона; $е[и - возврат курсора в позицию, запомненную при выдаче команды $e[s ; $р - вывод имени текущего каталога; $е[32ш — установка зеленого цвета символов; $g - вывод символа ”>”; $е[0т — установка обычного цвета символов. Установка переменных окружения. Операционная система отво¬ дит специальную область оперативной памяти, называемую ’’окруже¬ нием” (Environment), для хранения значений некоторых переменных, которые используются операционной системой и другими программа¬ ми. Окружение состоит из строк вида ’’переменная = значение”. Здесь переменная - любая строка, не содержащая символа При этом в записи переменной большие и малые латинские буквы считаются оди¬ наковыми. Значение - любая строка символов. Операционная система MS DOS использует три переменные окру¬ жения: path (устанавливается командой path), prompt (устанавливает¬ ся командой prompt) и Comspec (устанавливается командой Command с параметром /Р). Пользователь может задавать переменные окруже¬ ния с любыми другими именами. Для установки значения перемен¬ ной окружения имеется команда set. Формат команды: set переменная = значение Если указанной переменной уже было присвоено какое-то значе¬ ние, то оно заменяется новым. Примеры set 87 = N set Chifiles = C:\CHI Прикладные программы могут анализировать область памяти, предназначенную для хранения переменных окружения, и выяснять, установлено ли значение той или иной переменной и каково значение переменной, если оно установлено. Наиболее часто переменные окру¬
Конфигурирование системы 165 жения используются для того, чтобы указать, где прикладные про¬ граммы должны искать вспомогательные файлы. Наиболее часто используются следующие переменные окружения. CHIFILES - указывает имя каталога, содержащего вспомогательные файлы редактора документов ChiWriter; TEXT - указывает имя каталога, содержащего вспомогательные файлы редак¬ тора документов ЛЕКСИКОН; ТМР - указывает имя каталога, в котором различные программы фирмы Microsoft (например, Microsoft Fortran или Microsoft Word) создают временные файлы; РКТМР - указывает имя каталога, в котором создает временные файлы про¬ грамма архивации PKZIP; INCLUDE — указывает имена каталогов, в которых производится поиск фай¬ лов, вставляемых в текст при трансляции трансляторами фирмы Microsoft; LIB —• указывает имена каталогов', в которых производится поиск библиотек и объектных файлов при сборке файлов типа .EXE программой LINK; 87 — указывает программам, написанным на Turbo С, Turbo Pascal и др., ис¬ пользовать или не использовать математический сопроцессор Intel-80x87 (”Y” - использовать, ”N” — не использовать). Если значение переменной не задано, то со¬ процессор используется тогда, когда он имеется в компьютере. Запуск необходимых программ. В файл AUTOEXEC.BAT целесо¬ образно включить команды запуска программ, которые устанавлива¬ ют привычную рабочую обстановку на компьютере. Рассмотрим про¬ граммы, которые часто включаются в файл AUTOEXEC.BAT. 1. Драйверы, клавиатуры. Для обеспечения ввода русских букв с клавиатуры компьютеров зарубежного производства приходится ис¬ пользовать специальную программу — драйвер клавиатуры. Эта про¬ грамма, как правило, запускается в файле AUTOEXEC.BAT и посто¬ янно находится в оперативной памяти компьютера. Драйвер клавиа¬ туры воспринимает нажатия клавиш на клавиатуре и передает соот¬ ветствующие символы операционной системе MS DOS. После нажа¬ тия определенной комбинации клавиш драйвер клавиатуры начинает передавать в . компьютер символы другого алфавита. Одни драйверы используют для переключения на другой алфавит клавишу [Caps Lock], другие - одновременное нажатие обеих клавиш [Shift] или од¬ новременное нажатие клавиш [Ctrl] и [Alt], бывают и другие способы переключения. Очень удобно, когда драйвер клавиатуры выполняет также и фун¬ кции по обеспечению вывода кириллицы на экран. Для этого в па¬ мять компьютера могут загружаться шрифты символов кириллицы. С помощью этих шрифтов обеспечивается изображение символов ки¬ риллицы в графическом режиме монитора. Если компьютер имеет монитор, обладающий возможностью программной загрузки шрифтов (например, EGA, VGA или Hercules Plus), то драйвер клавиатуры мо¬ жет обеспечить изображение на экране символов кириллицы и в тек¬ стовом режиме монитора, в противном случае в текстовом режиме будут изображаться те символы, которые заданы в памяти знакогене¬ ратора - электронной схемы, управляющей изображением символов на экране в текстовом режиме.
166 Глава 13 Если ваш компьютер имеет монитор, обладающий возможностью программной загрузки шрифтов, то Вы можете выбирать, какой ко¬ дировкой символов будете пользоваться. Наиболее распространенные в СССР таблицы кодировки символов приведены в приложении 6. Все эти кодовые таблицы совпадают для символов с кодами 0—127 (в час¬ тности, для латинских букв и цифр, знаков пунктуации и т.д.). Поэ¬ тому программа, которая выводит на экран сообщения на английском языке, будет работать одинаково вне зависимости от того, какая ко¬ дировка символов используется в компьютере. Однако программы, выдающие сообщения на русском языке или использующие псевдо¬ графические символы для рисования линий, таблиц и диаграмм, при переходе к другой кодировке станут работать неправильно. По мне¬ нию автора, наиболее целесообразно употребление альтернативной кодировки ГОСТа, так как в ней все псевдографические символы име¬ ют те же коды, что и в кодировке символов IBM. При этом обеспечи¬ вается возможность использования зарубежных программ без всяких изменений. В альтернативной кодировке ГОСТа символы кириллицы находятся в позициях, где в кодировке IBM расположены относи¬ тельно редко используемые символы национальных алфавитов, грече¬ ские буквы и некоторые математические символы. Если ваш компьютер имеет монитор, не обладающий возможно¬ стью программной загрузки шрифтов, то в текстовом режиме будут изображаться те символы, которые заданы в памяти знакогенератора. Если знакогенератор может выводить символы кириллицы, то целе¬ сообразно использовать кодировку символов, поддерживаемую знако¬ генератором. Если же знакогенератор не выводит символы кирилли¬ цы, или используемая им кодировка Вас не устраивает, то надо поме¬ нять знакогенератор или записать в него с помощью специальных приборов нужные шрифты символов. Для того чтобы вывести на экран таблицу символов с кодами 128—255, можно воспользоваться следующей программой на языке Паскаль (версия Turbo Pascal 5.0): uses Crt; var I, J, К : integer; begin writein; for I := 1 to 16 do begin for J := 1 to 8 do begin К := 128 + (1-1) + (J-l)*16; write(K:5, ' - chr(K)); end; writein; end; end. Таблицу, которую эта программа выведет на экран, целесообразно сравнить с таблицами из приложения 6, так как некоторые драйверы клавиатуры задают шрифты символов неправильно. Например, сим¬ волы кириллицы могут задаваться правильно, а символы псевдогра¬ фики — неверно.
Конфигурирование системы 167 2. Программы для обеспечения изображения символов кириллицы на экране. Если драйвер клавиатуры не обеспечивает изображение символов кириллицы на экране, то для этого необходимо использова¬ ние специальных программ. Такие программы могут называться GRAFTABL или GRAFCYR. Все соображения об изображении на эк¬ ране символов кириллицы и псевдографических символов, приведен¬ ные выше, относятся и к этим программам. 3. Драйверы принтера. В том случае, когда принтер не обладает возможностью печати русских букв в текстовом режиме или же коды русских букв в принтере не совпадают с их кодами в компьютере, для печати русских текстов необходимо использование специальных программ. Наиболее удобен такой вариант, когда в файле AUTOEXEC.BAT запускается драйвер принтера, который постоянно находится в оперативной памятй компьютера и перекодирует все рус¬ ские буквы, посылаемые на принтер, в соответствующие им коды принтера. Некоторые драйверы принтера перекодируют все символы, посылаемые на принтер и имеющие те же коды, что и русские буквы. Это не совсем правильно, поскольку такие символы могут встречаться при выводе графических изображе¬ ний и в других управляющих последовательностях принтера. Таким образом, слишком ’’простой” драйвер принтера может лишить Вас возможности вывода гра¬ фических изображений и использования редакторов документов, которые исполь¬ зуют при печати управляющие последовательности принтера. Более правильные драйверы принтера отслеживают все управляющие последовательности принтера и перекодируют только те символы с кодами русских букв, которые встречаются вне управляющих последовательностей принтера. 4. Программы для печати копии экрана в графическом режиме. Эти программы после своего запуска позволяют напечатать в любой момент копию экрана при нажатии определенной комбинации клавиш, например [Shift—PrtScr]. Программа Graphics, входящая в состав MS DOS, позволяет печатать на принтере, совместимом с IBM Color Printer или IBM Graphics Printer, копию экрана, если экран на¬ ходится в режиме, совместимом с одним из графических режимов адаптера CGA, т.е. 320x200 точек, 4 цвета или 640x200 точек, 2 цве¬ та. Имеются программы, позволяющие печатать копию экрана и для других графических режимов. Например, для печати копии экрана монитора EGA можно использовать программы EGAEPSON и EGAPRINT. 5. Программы для установки часов в компьютере. В первых мо¬ делях компьютера IBM PC показания часов компьютера необходимо было устанавливать заново после каждого включения компьютера. Это неудобство было устранено различными производителями компь¬ ютеров с помощью подключения специальной электронной схемы, со¬ держащей часы и аккумуляторную батарейку для обеспечения их ра¬ боты даже тогда, когда компьютер выключен. С помощью програм¬ мы, включаемой в файл AUTOEXEC.BAT, обеспечивается считывание информации из этих часов в часы компьютера. Такая программа мо¬ жет называться Timer, Realtime и т.п., она устанавливается фирма¬
168 Глава 13 ми-производителями компьютера на диск с операционной системой MS DOS. На многих компьютерах, например компьютерах IBM PC АТ и PS/2, считывание информации из энергонезависимых часов обеспечи¬ вается во время включения электропитания автоматически. Если ваш компьютер не имеет встроенных энергонезависимых ча¬ сов, то Вам придется устанавливать показания часов в компьютере при каждой начальной загрузке MS DOS. В этом случае в файле AUTOEXEC.BAT должны иметься команды Date и Time. 6. Программа DOSEDIT. Эта программа хранит несколько (около десяти) последних введенных пользователем команд и может вывести их в командную строку MS DOS. Это позволяет легко повторить одну из последних введенных команд, сделав при необходимости в ней нужные изменения. Команды с неправильными именами (т.е. коман¬ ды, в ответ на которые MS DOS выдала сообщение ’’Bad command or file name”), программой DOSEDIT не запоминаются. Иногда в файл AUTOEXEC.BAT включается не вызов программы DOSEDIT, а вызов какой-нибудь аналогичной программы, например CED. Для вывода в командную строку MS DOS последней введенной ко¬ манды следует нажать клавишу [t]. При повторных нажатиях клави¬ ши [т] в командную строку MS DOS будет выводиться команда, кото¬ рая была введена перед той, которая находится в командной строке. Если в командной строке находится самая старая из запомненных программой DOSEDIT команд, то туда при нажатии клавиши [т] бу¬ дет снова выдана последняя введенная команда. При нажатии на клавишу [I] в командную строку MS DOS будет выведена самая старая из запомненных программой DOSEDIT команд. При повторных нажатиях клавиши [I] в командную строку MS DOS будет выводиться команда, которая была введена после той, которая находится в командной строке. Если в командной строке находится последняя введенная пользователем команда, то туда при нажатии клавиши [1] будет, снова выдана самая старая из запомненных про¬ граммой DOSEDIT команд. Нажатия на клавиши [t] и [I] можно че¬ редовать в произвольном порядке. Формат вызова программы: DOSEDIT . 7. Программы для ранней диагностики наличия компьютерного вируса. Эти программы проверяют, не изменились ли некоторые фай¬ лы на компьютере, которые не должны изменяться (например, файлы операционной системы MS DOS). При обнаружении изменения фай¬ лов на экран выдается сообщение о том, какой файл изменен, и пре¬ дупреждение о возможности наличия в компьютере вируса. Текст та¬ кой программы приведен в приложении 6. 8. Программы для защиты от компьютерного вируса. Эти про¬ граммы постоянно находятся в памяти и ’’перехватывают” все запро¬ сы к операционной системе MS DOS на выполнение различных ’’подо¬ зрительных” действий, т.е. операций, которые используют компью¬ терные вирусы для своего ’’размножения” и для порчи информации в компьютере. При каждом запросе на такое действие на экран компь¬ ютера выводится сообщение о том, какое действие затребовано и ка¬ кая программа желает его выполнить. Пользователь может либо раз¬
Конфигурирование системы 169 решить выполнение этого действия, либо запретить его. Использова¬ ние таких программ для защиты от вируса позволяет обнаружить компьютерный вирус на самой ранней стадии, когда он еще не успел размножиться и что-либо испортить. Тем самым можно свести убыт¬ ки от компьютерного вируса к минимуму. Команда запуска программы для защиты от компьютерного виру¬ са должна находиться в файле AUTOEXEC.BAT после всех команд для запуска других резидентных программ. 9. Часто в файл AUTOEXEC.BAT включаются программы, выдаю¬ щие различные напоминающие сообщения, например сообщения о за¬ планированных на день мероприятиях. 10. Если Вы привыкли использовать какую-либо программу-обо¬ лочку типа программы Norton Commander, то целесообразно вставить команду для запуска соответствующей программы в файл AUTOEXEC.BAT. Просмотр почты. При работе на одном компьютере нескольких пользователей часто бывает необходимым передавать друг другу ка¬ кие-то сообщения. Следующий фрагмент файла AUTOEXEC.BAT по¬ зволит выводить на экран при начальной загрузке компьютера файл MAIL в каталоге C:\DOC, если этот файл там существует. if not exist C:\DOC\MAIL goto nomail type C:\DOC\MAIL pause :nomail Определение значений клавиш на клавиатуре. Многие пользова¬ тели используют возможности драйвера ANSI.SYS переопределять значения клавиш на клавиатуре для ускорения ввода команд. Они присваивают различным клавишам значения таким образом, чтобы при нажатии на эти клавиши выполнялись наиболее часто используе¬ мые команды. Для того чтобы переопределить значения клавиш, надо послать на экран специальную управляющую последовательность драйвера ANSI.SYS. После этого при нажатии на эту клавишу будет выдавать¬ ся указанная в команде переопределения строка символов. Если эта строка заканчивается символом ’’конец строки” (символ с кодом 13), то эта строка тут же будет выполнена как команда MS DOS. Чтобы при нажатии на клавишу в командную строку выводилась команда, надо послать на экран следующую управляющую последова¬ тельность: <-[<код-клавиши>;”<команда>”р Здесь стрелкой влево (’*-’) изображается символ с кодом 27 (Escape). После нажатия на соответствующую клавишу в командную стро¬ ку будет выведена указанная команда. Ее можно отредактировать и, нажав клавишу [Enter], выполнить.
170 Глава 13 Для того чтобы при нажатии на клавишу выполнялась некоторая команда, надо послать на экран следующую управляющую последова¬ тельность: +-[<код-клавип1и>;”<команда>”; 1 Зр Как правило, переопределяются значения следующих клавиш и комбинаций клавиш: [Fl] - [F10] — коды 0;59 - 0;68 [Shift-Fl] - [Shift-FlO] — коды 0;84 - 0;93 [Ctrl—Fl] - [Ctrl—F10] — коды 0;94 - 0;103 [Atl-Fl] - [Atl-FlO] — коды 0;104 - 0;113 При определении значений клавиш бывает затруднительно ис¬ пользовать символ с кодом 27, так как он является управляющим и его не всегда можно ввести с клавиатуры. Один из выходов таков: на¬ до с помощью программы на каком-либо языке программирования со¬ здать файл с нужными управляющими последовательностями, а за¬ тем выводить этот файл командой Туре. Пример файла AUTOEXEC.BAT @echo off rem Установка пути поиска программ rem path C:\EXE\DOS;C:\EXE;C:\EXE\NU;C:\TC;..;. Д.. rem rem Установка вида приглашения MS DOS rem prompt $e[36m$t$h$h$h$h$h$h $e[35m$p$e[32m$g$e[0m rem rem Установка переменных окружения rem set CHIFILES=C:\CHI set LIB=C:\FORTRAN;C:\MSC\LIB set INCLUDE=C:\MSC\INCLUDE set TMP=E:\ rem Запуск драйвера клавиатуры C:\EXE\FILOAD\RK rem Запуск программы DOSEDIT DOSEDIT rem Диагностика наличия вируса rem C:\EXE\ANTIAIDS\CRCTEST C:\EXE\ANTIAIDS\CRCTEST.DAT rem rem Запуск программы для защиты от вируса rem EXE\ANTIAIDS\ANTIVIRU rem rem Запуск программы Norton Commander rem NCS
Обслуживание жесткого диска 171 Глава 14 ОБСЛУЖИВАНИЕ ЖЕСТКОГО ДИСКА В ходе эксплуатации жесткого диска на нем могут образовывать¬ ся ’’потерянные” участки, не принадлежащие ни одному из файлов и списку свободных участков диска, дефектные участки, ненужные файлы, которые сохраняются на диске только потому, что их позабы¬ ли стереть, и т.д. Поэтому необходимо периодически проводить об¬ служивание жесткого диска подобно тому, как следует периодически проводить ’’техническое обслуживание” автомобиля или какого-ни¬ будь другого устройства. Если компьютер используется интенсивно, то процедуру обслужи¬ вания жесткого диска следует выполнять раз в 1—2 недели, а при ме¬ нее интенсивной загрузке — раз в 1—2 месяца. Мы будем предполагать в приводимых примерах и командах, что обслуживаемый диск — это диск С:. При обслуживании другого диска следует сделать очевидные изменения в этих командах. Аналогичную процедуру обслуживания (возможно, с некоторыми упрощениями) можно выполнять для дискет, с которыми производит¬ ся интенсивная работа. Процедура обслуживания жесткого диска Процедура обслуживания жесткого диска может быть такова: 1. С помощью программы chkdsk проверяется правильность фай¬ ловой системы на диске и возвращаются ’’потерянные” участки на ди¬ ске. Следует ввести команду chkdsk с: /f . При выполнении программы chkdsk может быть ‘выдано сообще¬ ние: хх lost clusters found in yy chains. Convert lost chains to files (Y/N)? (Найдено хх потерянных кластеров, входящих в уу цепочек. Преобразовать потерянные цепочки в файлы (У — да, N — нет)?) Если ответить ”Y”, то потерянные участки преобразуются в фай¬ лы FIJjEOOOO.CHK, FILE0001.CHK и т.д. в корневом каталоге прове¬ ряемого диска. Эти файлы следует просмотреть и, если они не содер¬ жат нужной информации, удалить. Если же ответить ”N”, то поте¬ рянные участки возвращаются в список свободных участков на диске. Более подробную информацию о программе chkdsk можно получить в части 5 настоящей книги. 2. Надо удалить с диска ненужные файлы и каталоги. Часть фай¬ лов можно удалить автоматически. Например, многие программы со¬ здают файлы с расширением .ВАК в качестве ’’страховочных” копий
172 Глава 14 файлов, делаемых перед их изменением. Эти файлы можно удалить с помощью команды DELBAK, реализуемой с помощью командного файла DELBAK.BAT: echo off с: wipefile c:\*.bak /з /п (Программа WIPEFILE входит в комплект программы Norton Utilities). Во многих случаях имеются и другие файлы, которые можно ав¬ томатически удалять с диска. Например, при работе с редактором Chiwriter образуются файлы BACKUP.СШ, которые содержат страхо¬ вочные копии редактируемого документа. Поэтому при использова¬ нии этого редактора имеет смысл дополнить файл DELBAK.ВАК строкой wipefile c:\delbak.chi /s /п . 3. Если свободного места на диске имеется недостаточно, то сле¬ дует удалить с диска ненужные файлы, а также сархивировать и уда¬ лить нужные, но давно не используемые файлы. Для того чтобы легко можно было узнать, какие файлы давно не использовались, можно использовать программу Norton Commander, установив режим вывода информации о файлах в порядке увеличения срока давности последнего их применения (для этого надо нажать клавишу [F9], выбрать в меню ’’Left” или ’’Right” для левой или пра¬ вой панели, а затем выбрать ’’Time”). При этом самые ’’старые” фай¬ лы окажутся в конце списка файлов отбражаемого каталога. Если на диске все еще остается мало свободного места, то следует сархивировать или скопировать на дискеты, а затем удалить с жест¬ кого диска комплексы программ, которые редко используются, но за¬ нимают много места. Эти комплексы программ при использовании на¬ до будет копировать на жесткий диск либо запускать с дискет. Чтобы узнать, в каких каталогах суммарный размер файлов является доста¬ точно большим, можно использовать программу LD из комплекса программ Norton Utilities: Id /t >имя файла 4. Чтобы программы Norton Commander, NCD, PCTools и другие выводили на экран дерево каталогов, упорядоченное по алфавиту, следует воспользоваться программой NCD: cd \ nod NE /в /г 5. Раз в один-два месяца надо проверять, не образовались ли на диске сбойные участки. Программа DT проверит это и переместит ин¬ формацию со сбойных участков диска на нормальные участки. Формат вызова программы: dt с: /т /Ь . 6. Чтобы уменьшить износ дисковода и увеличить скорость рабо¬ ты с диском, следует воспользоваться программой sd для оптимиза¬ ции размещения файлов на диске (’’сжатия” диска): sd с:./а /с
Обслуживание жесткого диска 3 7. После выполнения указанных действий желательно произвести архивацию измененных файлов на диске (см. главу ”Архивация фай¬ лов”). Командный файл для обслуживания жесткого диска Для удобства можно оформить процедуру обслуживания жесткого диска в виде командного файла, например: echo off echo обслуживание жесткого диска с: с: cd \ chkdsk с: /f if errorlevel 1 goto exit wipefile c:\*.bak /s /n wipefile c:\backup.chi /s /n ncd ne /r /s ask "Проверять диск на наличие дефектов [Y/N] ?", YN if errorlevel 2 goto cont dt с: /Ь /го : cont sd с: /а /с archive : exit Здесь archive - команда вызова командного файла ARCHIVE.BAT, осуществляющего архивацию файлов на жестком диске. Пример та¬ кого файла см. в главе "Архивация файлов”. Подготовка компьютера к выключению питания Перед выключением электропитания компьютера желательно установить головки чтения-записи на жестком диске в предусмот¬ ренное для данной модели диска положение. Это повышает срок службы жесткого диска и предохраняет его от повреждения (осо¬ бенно при транспортировке кдмпьютера). На многих моделях ком¬ пьютеров IBM PC АТ и PS/2 установка головок чтения-записи в нужное положение осуществляется при выключении питания авто¬ матически. На других моделях компьютеров установка головок чте¬ ния-записи перед выключением электропитания выполняется специальной программой, которая обычно называется PARK. Имеется много версий программ с именем PARK, разработанных различными авторами для разных моделей дисководов. Если в "фир¬ менной” поставке вашего компьютера (т.е. в наборе программ, по¬ ставляемых с компьютером), нет программы PARK, то не следует пе¬ реписывать такую программу с другого компьютера, так как она ско¬ рее всего на вашем компьютере будет работать неверно. Разумеется, если в документации на программу PARK указано, что она работает на вашей модели дисковода, то Вы можете смело устанавливать ее на компьютер.
174 Глава 14 Вы можете также воспользоваться программой HDPARK, разра¬ ботанной Arc Software Group. Эта программа спрашивает у пользова¬ теля фирму-производителя и тип дисковода, после чего ’’паркует” ди¬ сковод. Например, если ваш дисковод произведен фирмой Seagate и имеет тип ST—251, то Вам надо ответить на вопросы программы HDPARK: ”J”, ”Е”, ”С”, ”Р” и ”N”. Чтобы не думать каждый раз о том, что отвечать на вопросы программы, можно подготовить файл с ответами и подать его на вход программы HDPARK. Так, в приведен¬ ном выше примере этот файл должен содержать пять букв: JECPN . Пусть этот файл имеет имя HDPARK.PAR и находится в каталоге C:\EXE. Тогда можно создать файл PARK.BAT следующего содержа¬ ния: ECHO OFF HDPARK < C:\EXE\HDPARK.PAR После этого команда PARK будет вызывать файл PARK.BAT, ко¬ торый и будет подготавливать компьютер к выключению питания. Для того чтобы команда PARK выполнялась из любого каталога, сле¬ дует включить файлы PARK.BAT и HDPARK.EXE в один из катало¬ гов, заданных в команде Path.
Часть 5 СПРАВОЧНЫЕ СВЕДЕНИЯ Глава 15 СПРАВОЧНЫЕ СВЕДЕНИЯ О КОМАНДАХ MS DOS В главе приведены сведения о наиболее полезных командах MS DOS, не описанных или не полностью описанных в предыдущих главах книги. Полное описание всех команд MS DOS в этой книге не поместилось, его можно найти в комплекте документации и прог¬ рамм ’’Работа пользователя с персональным компьютером IBM PC”, распространяемым совместным предприятием ’’Йнтерквадро” (см. информацию в конце книги). Обозначения При описании команд MS DOS квадратные скобки, фигурные скобки и много¬ точие используются только для объяснения формата команд, они не должны наби¬ раться пользователем при вводе команды. Эти символы имеют следующие значе¬ ния: [ххх] - в команде может (но не обязан) присутствовать элемент ххх; [ххх]... - в команде может присутствовать один или несколько элементов ххх (как правило, разделенных пробелами), а может не быть ни одного элемента ххх; [ххх ууу] - в команде могут присутствовать либо ххх, либо ууу, либо ни один из них; {ххх ууу} — в команде должны присутствовать либо ххх, либо ууу. Assign - присваивание дисководу другого логического имени (буквы) Формат команды: assign [буква=буква]... Команда assign X=Y означает, что все операции чтения или запи¬ си, назначенные на дисковод X: , будут производиться с дисководом Y: . Команда assign без параметров восстанавливает первоначальные значения логических имен дисководов.
176 Глава 15 Например, команда assign А=В В=С перенаправит все операции чтения-запи¬ си, назначенные на дисководы А: и В: , на жесткий диск С: , т.е. поиск файла a:letter.doc будет производиться не на дисководе а: , а на дисководе с: . Команду assign не следует использовать при нормальной работе: она нужна только для того, чтобы ’’обмануть” программы, работаю¬ щие с фиксированными дисководами, и заставить их работать с дру¬ гими дисководами. Замечание. Если логические имена дисководов изменены командой assign, то команды backup и print использовать не следует. Команды MS DOS format и diskcopy игнорируют все переобозначения логических имен дисководов. Attrib - изменение и отображение атрибутов файла Формат команды: attrib [+а | -а] [+г | -г] имя-файла Параметры: +г — устанавливает атрибут файла ’’только для чтения”; -г — отменяет атрибут файла ’’только для чтения”; +а — устанавливает атрибут ”не архивирован” у файла; -а — отменяет атрибут ”не архивирован” у файла. Команда attrib имя-файла выводит на экран информацию об ат-; рибутах файла. При этом в имени файла можно использовать симво лы * и ?. Пример. Команда attrib +а +г paper.doc устанавливает у файла paper.doc атрибуты ’’только для чтения” и ”не архивирован”. Замечания. 1. Атрибут файла ’’только для чтения” предохраняет файл от изменений. Атрибут файла ”не архивирован” сбрасывается программами backup и хсору для обозначения того, что копия файла помещена в архив. 2. Программа FA из набора программ Norton Utilities может изменять и дру¬ гие атрибуты файла (’’системный” и ’’спрятанный”). Break - установка режима проверки нажатия [Ctrl-Break] Формат команды: break on — установить режим проверки нажатия комбинации клавиш [Ctrl—Break] при операциях ввода-вывода с диском; break off — отменить режим проверки нажатия комбинации клавиш [Ctrl—Break] при операциях ввода-вывода с диском; break — (без параметров) — вывести на экран информацию о теку¬ щем состоянии режима break. Замечание. Команды MS DOS воспринимают нажатие [Ctrl—Break] (т.е. одновременное нажатие клавиш [Ctrl] и [Break]) как сигнал к завершению рабо¬ ты. Если режим break установлен в состояние ’’off”, то проверка на нажатие поль¬ зователем [Ctrl—Break] производится при вводе с клавиатуры и выводе на экран и на принтер. В состоянии ”оп” режима break проверки на нажатие [Ctrl—Break] производятся также и при операциях ввода-вывода с диском и в некоторых дру¬ гих случаях.
Справочные сведения о командах MS DOS 177 Call - вызов командного файла из другого командного файла Формат команды: call имя-командного-файла [параметры] Команда call вызывает выполнение командного файла из другого командного файла. Если в командной строке указаны какие-либо параметры, кроме имени командного файла, то эти параметры передаются командному файлу; они доступны там как значения символов %1 — %9. Команда call работает только в версиях MS DOS, начиная с 3.3. В версиях MS DOS до 3.3 можно вместо нее использовать команду command /с имя-командного-файла [параметры] Chkdsk - проверка диска на правильность файловой системы Формат команды: chkdsk дисковод: [имя файла] [/f] [/v] Параметры: дисковод — имя проверяемого дисковода; имя файла — имя файла, проверяемого на то, что он расположен на диске последовательно, а не ’’вразброс”; /f — задает режим коррекции найденных ошибок; /v — задает режим вывода информации об обрабатываемых фай¬ лах (выдаваемая информация при этом аналогична той, которая вы¬ водится командой Tree). Пример: chkdsk a: /f /v Если в процессе работы были найдены ’’потерянные” участки на диске (они образуются при аварийных завершениях программ), то программа chkdsk спросит: хх lost clusters found in yy chains Convert lost chains to files (Y/N)? (Найдено хх потерянных кластеров в yy цепочках. Преобразовать эти цепочки в файлы?) Если ответить ”У”, то ’’потерянные” цепочки кластеров будут пре¬ образованы в файлы с именами FILExxxx.CHK в корневом каталоге диска, где хххх — четырехзначные числа. Эти файлы можно просмот¬ реть и, если они не содержат нужной информации, удалить. Если же ответить ”N”, то ’’потерянные” кластеры сразу будут присоединены к списку свободных участков диска. Если в команде chkdsk указано имя файла, то сообщается, запи¬ сан ли этот файл на диск последовательно: All specified files аге contiguous (Все указанные файлы являются непрерывными)
178 Глава 15 или нет: имя-файла contains non-contiguous blocks (имя-файла содержит непоследовательные участки) В процессе работы программа chkdsk может находить ошибки в файловой системе на диске. Если задан режим /f, то она будет исп¬ равлять найденные ошибки. Ниже приводятся некоторые сообщения программы chkdsk и рекомендуемые действия. Сообщение: имя-файла имя-файла is cross-linked on claster (файлы пересекаются по некоторому кластеру) Действие. Надо сделать копии файлов, а затем удалить эти файлы. Сообщение: Cannot chdir to имя-каталога. Tree past this point is not processed (He удается перейти в <имя-каталога>. Данный каталог и все его подкаталоги не обрабатываются) Действие. Проверьте, что имя каталога задано правильно, т.е. не содержит запрещенных символов, в частности букв кирилли¬ цы. Если после выдачи этого сообщения программа chkdsk спросит Вас: ’’Convert lost chains to files (Y/N)?”, то на этот вопрос лучше от¬ ветить [Ctrl—С], так как программа chkdsk будет считать ’’потерянны- ми” все файлы в указанном каталоге и его подкаталогах. Сообщения: Disk error reading FAT (Ошибка при чтении таблицы размещения файлов) Disk error writing FAT (Ошибка при записи таблицы размещения файлов) Действие. Желательно скопировать все файлы на другой диск, так как в таблице размещения файлов на диске имеется дефек¬ тный участок. Сообщение: Directory is totally empty, no . or .. (Каталог полностью пуст, в нем нет положенных ссылок на себя и на ’’родительский” каталог) Действие. Следует удалить указанный каталог, а затем снова его создать. Сообщение: Uncoverable error in directory. Convert directory to file (Y/N)? (Неисправимая ошибка в каталоге. Преобразовать каталог в файл ?)
Справочные сведения о командах MS DOS 179 Действие. Попробуйте ответить ”N” и запустить программу DT. Если же ответить ”Y”, то затем обязательно следует ответить ”У” на вопрос Convert lost chains to files (Y/N)?”, чтобы файлы, находя¬ щиеся в данном каталоге и его подкаталогах, были преобразованы в файлы FILExxxx.CHK в корневом каталоге диска. Сообщение: Invalid working directory. Processing cannot continue. (Недопустимый рабочий каталог. Работа не может быть продолжена) Действие. Диск является дефектным. Следует скопировать с него файлы и заново его отформатировать. Сообщение: Probable non-Dos disk. Continue (Y/N)? (Возможно, это не диск, записанный в MS DOS. Продолжить? (Y — да, N — нет)) Действие. Как правило, это сообщение означает, что нулевая дорожка диска или таблица размещения файлов неправильны. Если Вы проверяете дискету, то можно попробовать прочесть ее на другом дисководе. Если это жесткий диск, то следует попытаться скопиро¬ вать с него файлы, а затем переформатировать диск. Сообщение: Insufficient memory. Procesing cannot continue (Мало оперативной памяти. Работа не может быть продолжена) Действие. Попробуйте завершить все резидентные програм¬ мы и запустить программу chkdsk снова. Сообщение: Insufficient room in root directory. Erase files in root and repeat chkdsk. (Недостаточно места в корневом каталоге. Попробуйте удалить ненужные файлы из корневого каталога и снова запустить программу chkdsk.) Действие. Поступите так, как указано в сообщении. Замечания. 1. При возникновении ошибок в файловой системе на диске, с которыми не может справиться программа chkdsk, как правило, лучшим выхо¬ дом является копирование всех файлов на другие диски и переформатирование жесткого диска. 2. Одной из причин повреждения файловой системы на диске является дейст¬ вие компьютерного вируса. Желательно проверить диск на наличие вируса. Command - запуск командного процессора MS DOS Формат команды: command [имя-файла] [устройство] [/р] [/е: число] [/с строка]
180 Глава 15 П а,р а м е т р ы : имя-файла - задает имя и расположение файла командного про¬ цессора. Этот параметр используется тогда, когда часть командного процессора в оперативной памяти оказывается затертой прикладной программой. В этом случае резидентная часть командного процессора перезагружает остальную часть командного процессора с диска; устройство - задает логическое устройство MS DOS, с которого вводятся команды и на которое выводятся результаты работы команд MS DOS. Если параметр не задан, то подразумевается консоль (CON), т.е. клавиатура для ввода и экран монитора для вывода; /р - указывает, что командный процессор должен выполнить ко¬ мандный файл AUTOEXEC.BAT и игнорировать команду exit; /е:число - размер (в байтах) области памяти, в которой хранятся переменные окружения. По умолчанию этот размер - 128 байт, воз¬ можные значения — от 128 до 32768 байт; /с строка - этот параметр указывает, что командный процессор должен выполнить команду, заданную строкой, и закончить работу. Параметр /с, если он задан, должен быть последним параметром в командной строке. Команда command запускает новую версию командного процессо¬ ра (программы, выполняющей команды MS DOS). Запуск новой вер¬ сии командного процессора MS DOS бывает необходим в следующих случаях: 1. Для того чтобы выполнить команды MS DOS из прикладной программы, не завершая работу этой прикладной программы. 2. Для того чтобы из пакетного командного файла вызвать другой командный файл (в версиях MS DOS начиная с 3.3 для этого имеется команда call). 3. Если надо запустить нестандартную версию командного процес¬ сора, например версию, умеющую выполнять дополнительные коман¬ ды. Предусмотрены три варианта работы командного процессора. 1. Если при вызове командного процессора указан параметр /с, то командный процессор выполняет одну команду и оканчивает работу. Этот вариант обычно используется для вызова командного файла из другого командного файла. 2. Если при вызове командного процессора указан параметр /р, то командный процессор сначала выполняет командный файл AUTOEXEC.BAT (если находит его в корневом каталоге диска), затем выполняет любое число команд и не завершает свою работу до пере¬ загрузки MS DOS. Этот вариант вызова используется для запуска не¬ стандартных версий командного процессора. 3. Если при вызове не указан ни параметр /р, ни параметр /с, то командный процессор выполняет вводимые команды, а по команде exit заканчивает работу. Этот вариант вызова используется при вызо¬ ве командного процессора из прикладных программ. В этом случае пользователь может выполнить несколько команд MS DOS и по ко¬ манде exit вернуться в прикладную программу.
Справочные сведения о командах MS DOS 181 Примеры command /с dir а: command c:\bin\command.com /е:256 /р Сору - копирование файлов Команда сору может использоваться либо для копирования фай¬ лов, либо для объединения нескольких файлов в один файл, т.е. для создания файла, в котором последовательно записаны копии содер¬ жимого нескольких заданных файлов. 1. Копирование файлов с помощью команды сору Формат команды: сору имя-файла-или-каталога [режимы 1] [имя-файла-или-каталога] [режимы2] В именах файлов можно употреблять символы * и ?. Первый параметр команды задает, какие файлы копируются ко¬ мандой сору. Если первый параметр - это имя каталога, то копиру¬ ются все файлы из этого каталога. Далее для простоты мы будем называть второе имя файла или ка¬ талога, заданное в команде, вторым параметром команды. Второй параметр команды сору указывает каталог, в который ко¬ пируются файлы, а также имена копий файлов. Если второй пара¬ метр не задан, то файлы копируются в текущий каталог, причем име¬ на файлов при копировании не меняются. Если второй параметр ко¬ манды - это имя каталога, то файлы копируются в указанный ката¬ лог, причем имена файлов при копировании не меняются. Если вто¬ рой параметр команды ~ имя файла, то оно указывает имя каждого копируемого файла. Если имя файла во втором параметре команды включает указание на каталог, то файлы копируются в этот каталог. Примеры сору xxx.doc xxx.txt - копирование файла xxx.doc в текущем каталоге; созда¬ ется файл xxx.txt в текущем каталоге; сору а:\*.* - копирование всех файлов из корневого каталога накопителя а: в текущий каталог; copy \t\*.doc c:*.txt - копирование всех файлов с расширением .doc из катало¬ га \t текущего диска в текущий каталог накопителя с:. Файлы получают расши¬ рение .txt . Если в команде сору было задано копирование файла в тот же ка¬ талог и под тем же именем (например, если второй параметр коман¬ ды не задан, а первый парамер указывает файл (файлы) из текущего каталога), то копирование не производится. MS DOS выдаст сообще¬ ние об ошибке: File Cannot be copied onto itself 0 file(s) copied (Файл не может быть скопирован в себя. Скопировано 0 (нуль) файлов.)
182 Глава 15 В команде сору вместо имен файлов можно использовать обозна¬ чения логических устройств, например: CON — консоль (клавиатура для ввода, монитор для вывода). При вводе с клавиатуры конец файла задается как [Ctrl—Z] или [F6]); PRN — принтер (только как выходной файл); AUX — асинхронный коммуникационный порт’. Пример copy paper.txt prn - вывод файла paper.txt на принтер. В команде сору можно задать следующие режимы. 1. Режимы, задаваемые до или после первого параметра команды: /А — символ с кодом 26 ([Ctrl—Z]) в копируемом файле восприни¬ мается как конец файла, остаток файла не копируется. Этот режим принимается по умолчанию, т.е. тогда, когда не задан ни режим /А, ни режим /В; /В — файлы копируются целиком, проверка на наличие в файле символа [Ctrl—Z] не производится. Этот режим нельзя задавать, если первый параметр команды сору задает логическое устройство; /V — при копировании файлов производится проверка правильно¬ сти записи на диск. Эта проверка состоит в считывании с диска запи¬ санных данных и сравнении считанных данных с теми, которые запи¬ сывались на диск. Как правило, запись на диск выполняется без оши¬ бок, поэтому режим /V имеет смысл включать только при записи важной информации на дискеты, а также при записи на ’’сбойные” дискеты. При обнаружении ошибки записи на диск выдается соответ¬ ствующее сообщение. 2. Режимы, задаваемые после второго параметра команды: /А — в конце файла, созданного командой сору, будет записан символ с кодом 26 ([Ctrl—Z]); /В — символ с кодом 26 ([Ctrl—Z]) не добавляется в конец файла, созданного командой сору; /V — при копировании файлов производится проверка правильно¬ сти записи на диск. Если после второго параметра команды не задан ни режим /А, ни режим /В, то действует тот же режим, что и для первого параметра команды. 2. Конкатенация файлов с помощью команды сору Команда сору может использоваться для объединения содержимо¬ го нескольких файлов в один файл, т.е. для конкатенации файлов. Формат команды: сору имя-файла [ 4- имя-файла ]... имя-файла Если команда сору используется для конкатенации файлов, то сначала в команде перечисляются через знак ”+” (плюс) имена объе¬
Справочные сведения о командах MS DOS 183 диняемых файлов, а затем - имя файла, в который будет записано содержимое объединяемых файлов. В именах файлов можно употреблять символы * и ?. Примеры сору filel.dat + file2.dat all.dat - конкатенация файлов filel.dat и file2.dat. Полученный файл имеет имя all.dat; copy *.lst 4- *.ref *.ргп — к каждому файлу из текущего каталога с расширени¬ ем .LST добавляется файл с тем же именем» но с расширением .REF, и результат записывается в файл с тем же именем и расширением .PRN; copy *.lst all.prn — объединение содержимого всех файлов с расширением .LST. Результат записывается в файл ALL.PRN. Замечание. Не следует пытаться конкатенировать файлы в тех случаях, когда один из исходных файлов совпадает с одним из получаемых файлов. Напри¬ мер, если файл ALL.DOC уже существует, то команда copy *.doc all.doc будет оши¬ бочной, так как файл ALL.DOC будет уничтожен при начале копирования. Когда команда сору приступит к копированию файла ALL.DOC, будет выдано сообщение об ошибке: Content of destination lost before copy (Содержимое результирующего файла потеряно до копирования) Date - вывод информации о дате и установка даты в компьютере Формат команды: date По этой команде на экран выводится хранящаяся в компьютере информация о дне недели и дате, и Вы можете ввести новое значение даты. Если Вы не хотите менять дату, установленную в компьютере, то нажмите [Enter]. Для ввода даты надо ввести номер дня в месяце (1—31), номер ме¬ сяца (1—12) и год или две последние цифры года. Подсказка MS DOS укажет, в каком порядке эти числа надо вводить (ММ — месяц, DD — день, YY — год), между числами следует вводить символ ”—”. Пример Enter new date (dd-mm-yy): Вводимая строка: 15-02-1990 Diskcomp - сравнение дискет (по дорожкам) Формат команды: diskcomp [дисковод:] [дисковод:] [/1] [/8] Примеры diskcomp а: Ь: diskcomp а: Имена дисководов в команде указывают, где находятся сравнивае¬ мые дискеты. Если в команде указан только один дисковод, то диске¬ та на этом дисководе сравнивается с дискетой на текущем дисководе. Если в команде не указан ни один дисковод, то дискеты будут срав¬ ниваться на текущем дисководе. В этом случае, а также если в ко¬ манде указан один и тот же дисковод для сравниваемых дискет, то дискеты будут сравниваться на одном дисководе. Программа
184 Глава 15 diskcomp будет сообщать, когда в дисковод надо вставить другую дис¬ кету. Режимы: /1 — сравнение только одной стороны дискет, даже если дискеты двусторонние; /8 — сравнение только по 8 секторов на каждой дорожке, даже если дискеты содержат по 9 или 15 секторов на дорожке. Программа diskcomp сравнивает дискеты по дорожкам, иначе го¬ воря, каждая дорожка одной дискеты сравнивается с соответствую¬ щей дорожкой другой дискеты. Сравниваемые дискеты должны быть одного формата, в противном случае программа diskcomp откажется выполнять сравнение и выдаст сообщение Drive types or diskette types not compatible. (Типы дисководов или дискет не совместимы.) Если содержание дискет одинаково, то программа diskcomp выда¬ ет сообщение: Diskettes compares OK. (Сравнение дискет прошло успешно.) В противном случае выдается сообщение: Compare error on side xx, track nnn (Найдено различие на стороне хх, дорожке nnn) Если дискеты сравниваются на одном дисководе, то программа diskcomp выдает сообщения: Insert FIRST diskette in drive x: Press any key when ready... и Insert SECOND diskette in drive x: Press any key when ready... (Вставьте первую (вторую) дискету в дисковод х: и нажмите любую клавишу) Закончив сравнение, программа diskcomp спрашивает: Compare more diskettes (Y/N)? (Сравнивать еще дискеты (Y — да, N — нет)?) Если Вы хотите сравнить еще пару дискет, ответьте ”У”, иначе ответьте ”N”. Программа diskcomp по окончании работы устанавливает код воз¬ врата, который может быть проанализирован в пакетном командном файле с помощью переменной ERRORLEVEL: О — дискеты одинаковы; 1 — дискеты различны; 2 — пользователь прервал работу программы нажатием [Ctrl—С]; 3 — ошибка ввода-вывода; 4 - сравнение не производилось (недостаточно памяти или несовместимы форматы дискет).
Справочные сведения о командах MS DOS 185 Diskcopy - копирование дискет (по дорожкам) Формат команды: diskcopy [дисковод:] [дисковод:] Примеры diskcopy а: Ь: diskcopy а: Первый параметр в команде указывает дисковод, на котором на¬ ходится копируемая дискета. Второй параметр указывает дисковод, на котором находится дискета, на которую производится копирова¬ ние. Если в команде указан только один параметр, то копирование производится на текущий дисковод. Если не указано ни одного пара¬ метра, то копирование производится на одном — текущем дисководе. В этом случае, а также если в команде указан один и тот же диско¬ вод для обеих дискет, дискеты будут копироваться на одном дисково¬ де. Программа diskcopy будет сообщать, когда в дисковод надо вста¬ вить другую дискету. Программа diskcopy копирует дискеты по дорожкам — каждая до¬ рожка исходной дискеты копируется на соответствующую дорожку другой дискеты. Обе дискеты должны быть одного формата, т.е. иметь одно и то же число дорожек и секторов на каждой дорожке. Если форматы дискет различны, то программа diskcopy откажется выполнять копирование и выдаст сообщение Drive types or diskette types not compatible (Типы дисководов или дискет не совместимы) или Disks must of be the same size (Дискеты должы быть одного размера) Если дискета, на которую производится копирование, не инициа¬ лизирована (не форматирована), то программа diskcopy форматирует ее, причем формат будет такой же, как у исходной дискеты. Если копирование дискет выполняется на одном дисководе, то программа diskcopy выдает сообщения: Insert SOURCE diskette in drive x: Press any key when ready... (Вставьте исходную дискету в дисковод х: и нажмите любую клавишу) и Insert TARGET diskette in drive x: Press any key when ready... (Вставьте дискету, на которую производится копирование, в дисковод х: и нажмите любую клавишу) Закончив копирование, программа diskcopy спрашивает: Copy another (Y/N)? (Копировать еще (Y — да, N — нет)?)
186 Глава 15 Если Вы не хотите копировать еще дискеты, то ответьте ”N”. Ес¬ ли Вы ответите ”Y”, то программа diskcopy попросит Вас установить новую пару дискет на соответствующие дисководы и нажать любую клавишу. Программа diskcopy по окончании работы устанавливает код воз¬ врата, который может быть проанализирован в пакетном командном файле с помощью переменной ERRORLEVEL: О - копирование прошло успешно; 1 — ошибка ввода-вывода при копировании; 2 — пользователь прервал работу программы нажатием [Ctrl—С]; 3 — ошибка ввода-вывода при копировании; 4 — копирование не производилось (недостаточно памяти или несовмести¬ мы форматы дискет). Exit - выход из командного процессора MS DOS Формат команды: exit Замечание. Команда exit используется для окончании работы копии ко¬ мандного процессора COMMAND.COM. Как правило, запуск копии командного процессора осуществляется прикладными программами для того, чтобы пользова¬ тель мог ввести команды MS DOS, не выходя из прикладной программы. В этом случае для того, чтобы окончить работу копии командного процессора и вернуться в MS DOS, надо ввести команду exit. Fastopen - убыстрение открытия файлов Формат команды: fastopen Программа fastopen после своего запуска остается в оперативной памяти до перезагрузки MS DOS. Она считывает в оперативную па¬ мять информацию о размещении файлов в каталогах на имеющихся в компьютере жестких дисках, и с ее помощью ускоряет процесс от¬ крытия файлов операционной системой MS DOS. При этом, однако, уменьшается объем оперативной памяти, доступной программам, за¬ пускаемым пользователем. Программа fastopen входит в операционную систему MS DOS на¬ чиная с версии 3.3. Fc - сравнение файлов Программа fc предназначена для сравнения файлов. Сравнение может производиться двумя способами: 1) сравнение текстовых файлов, или построчное сравнение. При таком способе, если программа fc находит различие в файлах, то она пытается найти после точки рассогласования такие места в этих фай¬ лах, начиная с которых они вновь становятся одинаковыми. На вы¬ ход программа fc выдает различающиеся строки файлов; 2) сравнение других (двоичных) файлов, или побайтовое сравне¬ ние. При этом способе программа fc после обнаружения различия файлов не делает никаких попыток найти в файлах место, начиная с которого файлы снова становятся одинаковыми. На выход программа fc выдает различающиеся байты в файлах.
Справочные сведения о командах MS DOS 187 Если пользователь не указал режим сравнения файлов, то для файлов с расширениями имени .EXE, .COM, .SYS, .OBJ, .LIB и .BIN используется побайтовый способ сравнения, а для всех остальных файлов — построчный способ сравнения. Формат команды: fc [режимы] имя-файла имя-файла [>имя-файла-протокола] В именах сравниваемых файлов можно употреблять символы * и ?. Если имя файла протокола не задано, то сведения о различиях сравниваемых файлов выводятся на экран. Режимы: /1 — режим построчного сравнения файлов; /Ь — режим побайтового сравнения файлов; /с — при сравнении игнорируется различие между малыми латин¬ скими буквами и соответствующими большими латинскими буквами; /п — вывод номеров строк при построчном сравнении файлов; /t — не рассматривать знаки табуляции как пробелы. Если этот режим не указан, то при построчном сравнении файлов каждый знак табуляции, рассматривается как такое число пробелов (большее нуля), которое необходимо для того, чтобы следующий текст начинался с позиции, кратной восьми; /w — при построчном сравнении файлов — сжимать пробелы и зна¬ ки табуляции внутри строк (т.е. несколько пробелов и (или) знаков табуляции внутри строки рассматриваются как один пробел) и игно¬ рировать пробелы и знаки табуляции в начале и в конце строк; /а — сокращенная форма отчета о результатах сравнения файлов в построчном режиме: вместо выдачи различающихся кусков текста полностью выводятся только первые и последние их строки, проме¬ жуточные строки обозначаются многоточием; /ЬЬчисло — установка размера внутреннего буфера для нахожде¬ ния соответствий в текстовых файлах после их рассогласования. По умолчанию размер этого буфера — 100 строк (что соответствует пара¬ метру /LblOO); /число — устанавливает, сколько строк файлов подряд должны совпадать для того, чтобы файлы считались снова согласованными. По умолчанию этот параметр равен 2. Примеры fc а:*.* *.* /Lb500 /4 — сравнение всех файлов из корневого каталога диска а: с соответствующими файлами из текущего каталога. Размер внутреннего буфера программы fc — 500 строк. Файлы будут считаться согласованными, если совпада¬ ют подряд 4 строки. fc doclad.doc docladl.doc > diff - сравнение файлов doclad.doc и docladl.doc. Отчет о различиях помещается в файл diff. При побайтовом сравнении файлов отчет о различиях состоит из следующих строк: nnnnnn хх уу
188 Глава 15 где nnnnnn - относительный номер байта в файлах (нумерация начинается с нуля); хх - байт первого файла (в шестнадцатеричном виде); уу - байт второго файла (в шестнадцатеричном виде). Если один из сравниваемых файлов длиннее другого, то в конце выдается сообщение fc: имя-файла longer then имя-файла (fc: имя-файла длиннее, чем имя-файла) При построчном сравнении файлов сведения о различиях файлов выводятся в следующем виде: ***** имя-первого-файла Последняя совпадающая строка первого и второго файлов. Строки первого файла, которых нет во втором файле. Следующая совпадающая строка первого и второго файлов. ***** имя-второго-файла Последняя совпадающая строка первого и второго файлов. Строки ^второго файла, которых нет в первом файле. Следующая совпадающая строка первого и второго файлов. Пустая строка. Если после обнаружения различий программа fc не может снова найти совпадающих строк в файлах, то выводится сообщение Resynch failed. Files are too different (Ресинхронизация не удалась: файлы слишком различны) Если Вы не удовлетворены этим сообщением, то можете попробо¬ вать увеличить значение параметра /Lb для того, чтобы программа fc могла более успешно находить соответствия в файлах. Если файлы полностью совпадают, то программа fc выводит сооб¬ щение fc: no differences encounted (fc: различий не найдено) Find - поиск подстроки в файле или файлах Формат команды: find [/v] [/с] [/п] ’’подстрока” [имя-входного-файла]... [> имя-выходного-файла] Программа find читает входной файл (или файлы) и выводит в выходной файл те их строки, которые содержат указанную подстроку (если указан параметр /V - то те строки, которые не содержат ука¬ занную подстроку). Заданная в команде find подстрока должна быть заключена в кавычки. Если при вызове не указано имя выходного файла, то результаты выводятся на экран (т.е. на стандартное устройство вывода). Если в команде не указано имя входного файла, то программа find читает входные данные с клавиатуры (т.е. со стандартного устройства вво¬ да).
Справочные сведения о командах MS DOS 189 Режимы: /v - выводятся строки, не содержащие заданной подстроки; /с - выводится только число найденных строк для каждого из входных файлов; /п — перед каждой найденной строкой выводится ее номер во входном файле. Пример, find ’’CHAIN” progl.bas prog2.bas > chain.txt - в файлах progl.bas и prog2.bas ищутся строки, содержащие подстроку ’’CHAIN”. Эти строки записываются в файл chain.txt. For - выполнение команды MS DOS для набора файлов Команда for позволяет выполнить программу или команду MS DOS для нескольких файлов из указанного списка. Команда for мо¬ жет употребляться в командных файлах, а также непосредственно вводиться пользователем. По традиции ее описывают вместе с други¬ ми командами MS DOS, употребляемыми в командных файлах. Формат команды: for %х in (список) do команда Параметры: х — любой символ (кроме 0—9, чтобы не было смешения с пара¬ метрами командных файлов % 0-% 9); список — одно или несколько имен файлов, разделенных пробела¬ ми. В именах файлов можно использовать символы * и ? ; команда - любая программа или команда MS DOS, кроме коман¬ ды for. Если в команде употреблено %х, то оно заменяется именами файлов из списка. Примеры for % с in (*.asm) do masm % с - для всех файлов из текущего каталога с расширением .ASM вызвать макроассемблер MASM; for %f in (*.pas *.exe) do comp %f a:%f - сравнение файлов с расши¬ рениями .pas и .ехе из текущего каталога с такими же файлами на диске а:. При употреблении команды for в командном файле символ % должен удваиваться (если он не служит для обозначения параметров командного файла %0-%9). Например, в командном файле приведен¬ ные выше примеры должны были бы быть записаны так: for %%с in (-.asm) do masm %%c for %%f in (*.pas *.exe) do comp %%f a:%%f Format - инициализация (форматирование) диска Формат команды: format дисковод: [режимы] Пример: format а: /з Команда format инициализирует диски, т.е. размечает их таким образом, чтобы они могли быть использованы операционной системой MS DOS. Все новые диски необходимо форматировать командой
190 Глава 15 format перед их использованием в MS DOS. Если перед форматирова¬ нием на диске были какие-либо данные, то они будут уничтожены. С помощью указания режимов программы format можно выби¬ рать, каким именно образом будет размечена дискета. По умолчанию программа format размечает дискету так, чтобы она имела макси¬ мальную емкость, допускаемую на данном дисководе. Однако можно, например, указать, что при использовании дисковода для двусторон¬ них дискет дискета должна быть размечена как односторонняя. Это позволит использовать данную дискету и на дисководе для односто¬ ронних дискет, и на дисководе для двусторонних дискет. Режимы команды format: /s — после форматирования диска на него переносятся файлы опе¬ рационной системы (с текущего диска); /v — после форматирования диска программа format попросит вве¬ сти метку диска (до 11 символов длиной). Более подробная информа¬ ция о метке диска приводится в описании команды label в данной главе; /1 — дискета форматируется как односторонняя, даже если ис¬ пользуемый дисковод может работать и с двусторонними дискетами; /8 — дискета форматируется по 8 секторов на дорожку, как это делалось в MS DOS до версии 2.0. По умолчанию, если не задан ре¬ жим /8, дискета форматируется по 9 секторов на дорожку на диско¬ водах емкостью до 720 Кбайт и по 15 секторов на дорожку на диско¬ водах емкостью 1,2 Мбайт; /Ь — дискета форматируется по 8 секторов на дорожку и на ней резервируется место для системных файлов MS DOS; /4 — форматирование дискеты емкостью 360 Кбайт на дисководе для дискет емкостью 1,2 Мбайта. Эту дискету нельзя будет использо¬ вать на дисководах емкостью 360 Кбайт из-за ошибок ввода-вывода. Более целесообразно форматировать дискеты емкостью 360 Кбайт на дисководах емкостью 360 Кбайт; /п:число — указание числа секторов на дорожке при форматирова¬ нии дискеты; Д:число — указание числа дорожек при форматировании дискеты. При форматировании дискеты команда format выводит сообщение Insert diskette for drive x: and strike ENTER when ready (Вставьте дискету в дисковод х: и нажмите клавишу [Enter]) Если Вы передумали форматировать дискету, то в ответ на это со¬ общение нажмите [Ctrl—С]. При форматировании жесткого диска, на котором имеется метка, выводится сообщение Enter current volume label for drive x: (Введите имеющуюся метку на диске х:) В ответ на это сообщение следует ввести метку диска. Если вве¬ денное значение не совпадает с меткой диска, то выводится сообще¬ ние
Справочные сведения о командах MS DOS 191 Invalid volume Id. format failure. (Неверная метка диска. Форматирование не производится) и программа format завершает свою работу. Таким образом, осущест¬ вляется защита информации на жестком диске от случайного уничто¬ жения. Если метка жесткого диска указана правильно, то программа format выведет сообщение Warning, all data on non-removable disk on drive x: will be lost! Proceed with format (Y/N)? (Предупреждение: все данные на жестком диске х: будут уничтожены. Выполнять форматирование (У — да, N — нет) ? ) Если Вы передумали выполнять форматирование жесткого диска, ответьте ”N” и [Enter]. Для форматирования следует нажать ”Y” и [Enter]. В ходе работы программа format выводит сообщение Head Cylinder (Головка Цилиндр) под которыми выводится информация о форматируемой дорожке, т.е. соответствующие ей номера головки и цилиндра. По окончании работы выводятся сообщения: Format complete (Форматирование окончено) и Format another (Y/N)? (Форматировать еще ? [Y — да, N- нет]) Если Вы хотите форматировать еще диск (с использованием того же формата), то ответьте ”Y” и [Enter], иначе надо ответить ”N” и [Enter]. Если программа format не может разметить диск, то выводится сообщение Format failure. (Форматирование не удалось) Обыкновенно это сообщение сопровождается сообщением о причи¬ нах неудачи, например: Track 0 bad — disk unusable (Дорожка 0 испорчена - дискету использовать нельзя) Заметим, что это сообщение может появиться также при попытке инициализировать дискету с высокой плотностью записи (т.е. емко¬ стью 1,2 Мбайта) на дисководе для дискет емкостью 360 Кбайт или менее. Если это не так, то, скорее всего, дискету использовать нель¬ зя. Можно попробовать отформатировать эту дискету на другом дис¬ ководе. Кроме того, иногда такую дискету удается отформатировать программами PCTOOLS или PCFORMAT.
192 Глава 15 Если при указании параметра /s на том месте дискеты, где долж¬ ны располагаться системные файлы, обнаруживается дефектный уча¬ сток, то будет выдано сообщение Disk unsuitable for system disk (Диск не годится для использования в качестве системного) На таком диске можно хранить только данные. Замечания. 1. Не следует форматировать диски, которые были использо¬ ваны в командах assign, join и subst. 2. Нельзя форматировать диски, доступ к которым осуществляется через ло¬ кальную сеть. Программа format по окончании работы устанавливает код воз¬ врата, который может быть проанализирован в пакетном командном файле с помощью переменной ERRORLEVEL: О - успешное завершение; 3 - пользователь прервал работу программы с помощью нажатия [Ctrl-C]; 4 - ошибка ввода-вывода при форматировании; 5 - пользователь отказался от форматирования жесткого диска. Наиболее часто используемые форматы дискет приведены в табл. 15.1. Таблица 15.1 Формат Число Число Число Емкость дискеты сторон секторов дорожек дискеты DS HD 2 15 80 1.2 Мбайта DS/QD 2 9 80 720 Кбайт DS DD 2 9 40 360 Кбайт SS/DD 1 9 40 180 Кбайт DS/SD 2 9 20 180 Кбайт SS/SD 1 9 20 90 Кбайт DS/DD, MS DOS 1 2 8 40 320 Кбайт SS/DD, MS DOS 1 1 8 40 160 Кбайт DS/SD, MS DOS 1 2 8 20 160 Кбайт SS/SD, MS DOS 1 1 8 20 80 Кбайт Обозначения: число сторон - число одновременно используемых сторон на дискете; число секторов - число секторов на дорожке дискеты; число дорожек - число дорожек на одной стороне дискеты; SS - Single Sided (односторонняя дискета); DS - Double Sided (двусторонняя дискета); SD - Single Density (обычная плотность записи); DD - Double Density (двойная плотность записи); QD — Quadruply Density (четырехкратная плотность записи); HD - High Density (высокая плотность записи).
Справочные сведения о командах MS DOS 193 Graftabl - загрузка таблицы символов с кодами 128-255 Формат команды: graftabl Команда graftabl загружает в оперативную память шрифты симво¬ лов с кодами 128—255 для использования при изображении этих сим¬ волов в графическом режиме. При использовании программ, выдающих сообщения на русском языке, вместо программы graftabl лучше использовать аналогичную программу grafcyr. Формат этой команды: grafcyr . Graphics - подготовка к печати копии экрана в графическом режиме Формат команды: graphics [принтер] [/г] [/Ь] Программа graphics позволяет печатать на принтере, совместимом с IBM Color Printer или IBM Graphics Printer, копию изображения на экране, если экран находится в режиме, совместимом с одним из гра¬ фических режимов адаптера CGA, т.е. 320x200 точек, 4 цвета или 640x200 точек, 2 цвета. Для печати копии экрана следует сначала за¬ пустить программу graphics. После этого в любой момент можно на¬ печатать копию экрана, нажав клавиши [Shift—PrtScr]. Параметры: /г — печать позитивного изображения. По умолчанию печатается негативное изображение, т.е. белый цвет на экране изображается при печати черным, а черный цвет - белым; /Ь — печать фонового цвета экрана в цвете (этот параметр имеет смысл только для типов принтера COLOR4 и COLOR8). Параметр принтер команды Graphics — это одна из строк GRAPHICS, COMPACT, COLORI, COLOR4 или COLOR8, где GRAPHICS COMPACT COLORI COLOR4 - IBM Graphics Printer; — IBM Compact Printer; — IBM Color Printer с черной лентой; - IBM Color Printer, лента с цветами: красным, зеленым, си¬ ним, черным; COLOR8 — IBM Color Printer, лента с цветами: светло-голубым, малино¬ вым, желтым, черным. По умолчанию тип принтера — IBM Graphics Printer. Замечание. Имеются различные программы, позволяющие печатать ко¬ пию экрана и для других графических режимов. Например, копия экрана монито¬ ра EGA может быть напечатана с помощью программы EGAEPSON на принтерах типа Epson и с помощью программы EGAPRINT, входящей в пакет EGAPAINT, на принтерах различных типов. Мсору - копирование файлов и каталогов Программа гпсору отличается от программы хсору только тем, что она не спрашивает пользователя, является ли последнее указан¬ ное в команде имя именем файла или же именем каталога, в который 7 Фигурнов В. Э.
194 Глава 15 надо копировать файлы. Программа тсору считает, что это имя явля¬ ется именем каталога, если выполняется хотя бы одно из следующих условий: 1) в команде указано более одного копируемого файла; 2) одним из параметров команды является имя каталога, из кото¬ рого копируются файлы; 3) последним символом имени является символ ”\” (если добавить к последнему указанному в команде имени символ ”\”, то программа тсору будет считать это имя именем каталога). Например, команда тсору *.* a:\work\ создаст в корневом каталоге диска а: подкаталог WORK (если он не существует) и скопирует туда все файлы из текуще¬ го каталога. Замечание. Программа тсору в стандартном комплекте программ MS DOS отсутствует. Для того чтобы создать программу тсору. следует перейти в тот каталог, в котором находится программа хсору, и ввести команду сору /Ь xcopy.exe mcopy.exe Mode - установка режимов работы устройств Команда mode может использоваться в четырех вариантах. 1. Установка режимов работы принтера Формат команды: mode LPT[11 2 | 3]:[80 | 132] [,[6 | 8] [,Р]] Примеры mode LPT1:8O,6,P mode LPT2:8 Параметры: 1, 2 или 3 — номер порта параллельного принтера; 80 или 132 — число символов в строке; 6 или 8 — число строк на дюйм, задает интервал между строками; Р — если возникнет тайм-аут, т.е. неготовность принтера принять управляющую последовательность принтера, то программа mode бу¬ дет повторять вывод этой последовательности. Цикл повторения вы¬ вода управляющей последовательности можно прервать нажатием комбинации клавиш [Ctrl—Break]. 2. Установка режимов асинхронного коммуникационного порта Формат команды: mode С0М[11 2 | 3]:[число-бод] [,[N | О | Е] [,[71 8] [,11 2] [,Р]]]] Параметры: 1, 2 или 3 - номер порта (С0М1, COM2 или COM3): число-бод — скорость передачи данных (бит ' 300, 600, 1200, 2400, 4800 или 9600;
Справочные сведения о командах MS DOS 195 N, О или Е — контроль на четность: не производится, контроль нечетности, контроль четности; 7 или 8 — число передаваемых бит данных; 1 или 2 — число стоп-битов при передаче данных; Р - указывает, что данный порт используется с помощью коман¬ ды mode для подключения принтера и что при неготовности принтера необходимо повторить передачу данных. 3. Перенаправление на асинхронный коммуникационный порт данных, выводимых на параллельный порт Формат команды: mode LPT{11 2 | 3} := СОМ{11 2} Параметры: 1, 2, 3 после символов LPT — номер параллельного порта, вывод на который перенаправляется (к этим портам обыкновенно подключаются принтеры); 1, 2 после СОМ — номер асинхронного коммуникационного порта. Пример mode LPT1:=COM2 Замечание. MS DOS не проверяет, не перенаправлены ли на один асинх¬ ронный (СОМ) порт два параллельных (LPT) порта. 4. Установка режимов экрана Формат команды: mode режим-экрана или mode [режим-экрана],{R | L} [,Т] Параметры: режим экрана - это 40, 80, BW40, BW80, С040, СО80, MONO, где 40 — режим экрана с 40 символами в строке, 80 — режим экрана с 80 символами в строке, BW — черно-белое изображение, СО — цвет¬ ное изображение, MONO — монохромный адаптер, 80 символов в строке; R или L — указывает сдвиг изображения на экране направо или налево; Т — сдвиг изображения на экране с помощью тестовой строки. Примеры mode СО80 mode ,R,T Если задан параметр Т, то программа mode выводит на экран тес¬ товую строку: 0123456789...0123456789... и задает вопрос:
196 Глава 15 ♦ при сдвиге направо Do you see the leftmost 0 (Y/N)? (Виден ли левый нуль (Y — да, N — нет)?) ♦ при сдвиге налево Do you see the rightmost 9 (Y/N)? (Видна ли правая девятка (Y - да, N - нет)?) Если ответить ”N”, то программа mode смещает изображение на одну позицию и повторяет вопрос. Если ответить ”Y”, то работа про¬ граммы заканчивается. Если программа mode не может сместить изображение, она выво¬ дит сообщение Unable to shift screen (Сдвиг экрана невозможен) More - вывод на экран с ожиданием после заполнения каждого экрана Формат команды: more [< имя-входного-файла] Команда more < имя-входного-файла используется для вывода файла на экран с паузами после заполнения каждого экрана. Для продолжения вывода на экран следует нажать клавишу [Enter]. Команду more часто используют для того, чтобы вывести на эк¬ ран большой объем информации, выдаваемой другой программой или командой MS DOS. Для этого результаты, выводимые на экран про¬ граммой или командой, подают на вход команды more с помощью символа ’’трубопровода” - имя-команды | more Однако такой прием годится только для тех программ, которые используют для вывода на экран средства MS DOS (все команды MS DOS поступают именно так). Пример, dir | more — вывод оглавления текущего каталога с ожиданием после заполнения каждого экрана. Path - установка списка каталогов, в которых производится поиск выполняемых программ Формат команды: path имя-каталога [; имя-каталога]... — установка списка катало¬ гов, в которых производится поиск программ; path ; - устанавливает, что поиск программ должен вестись толь¬ ко в текущем каталоге; path без параметров — выводит имена каталогов, в которых про¬ изводится поиск программ.
Справочные сведения о командах MS DOS 197 После ввода любой команды, не являющейся внутренней коман¬ дой MS DOS, поиск соответствующей программы производится сначала в текущем каталоге, а затем в каталогах, указанных в ко¬ манде path в том порядке, в котором они указаны в команде. Замечание. Имена каталогов в команде path рекомендуется указывать полностью, т.е. с указанием дисковода. Print - печать файлов в ’’фоновом” режиме (параллельно другой работе) Программа print выводит файлы на печать. Во время печати фай¬ лов можно выполнять любую другую работу на компьютере, т.е. пе¬ чать идет в ’’фоновом” режиме. Остановок между печатанием отдель¬ ных страниц не делается, поэтому используемый принтер должен быть оснащен непрерывной бумажной лентой или устройством для автоматической подачи отдельных листов бумаги. Формат команды при первом вызове: print [/скустройство] [/Ь:размер-буфера] [Лрразмер-очереди] [[имя-файла] [/t] [/с] [/р]]... при следующих вызовах: print [[имя-файла] [/t] [/с] [/р]]... Режимы, которые можно задавать при первом вызове: /(^устройство — устройство, на которое выводятся файлы: PRN, LPT1, LPT2, LPT3, С0М1, COM2, COM3; /Ь:размер-буфера — размер внутреннего буфера программы print. Увеличение размера буфера ускоряет работу программы print; /ц:размер-очереди — размер очереди, т.е. максимальное число файлов, ожидающих печати (от 4 до 32, значение по умолчанию — 10). Пример-задания этих режимов: print /d:LPT2 /Ь:4096 /q:20 Другие режимы команды print: /t - (terminate) — удаляет все файлы, ожидающие печати, из оче¬ реди. На принтере печатается сообщение All files cancelled by operator (Все файлы удалены пользователем) /с — (cancel) — удаляет файл, после которого задан режим /с, из очереди. Кроме того, все следующие файлы, указанные в командной строке при вызове команды print, вплоть до файла, за которым ука¬ зан режим /р (не включая этот файл), также будут удалены из очере¬ ди файлов, ждущих печати. Если файл, печатаемый в данный мо¬ мент, удаляется из очереди, то печать его заканчивается и на принте¬ ре печатается сообщение
198 Глава 15 File cancelled by operator (Печать файла отменена пользователем) /р - (print) — файл, после которого задан режим /р, ставится в очередь файлов, ждущих печати. Кроме того, все следующие файлы, указанные в командной строке при вызове команды print, вплоть до файла, за которым указан режим /с (не включая этот файл), также ставятся в очередь файлов, ждущих печати. Если за первым файлом в команде print или перед ним нет ни па¬ раметра /р, ни параметра /с, то можно считать, что за этим файлом стоит параметр /р. Таким образом, этот файл и все следующие фай¬ лы, указанные в командной строке при вызове команды print, вплоть до файла, за которым указан режим /с, если такой есть (не включая этот файл), ставятся в очередь файлов, ждущих печати. Команда print без параметров выводит список файлов, ожидаю¬ щих печати. Если таких файлов нет, то на экран выводится сообще¬ ние: Print queue is empty (Очередь файлов, ожидающих печати, пуста) Если очередь файлов, ожидающих печати, переполнена, то на эк¬ ран выводится сообщение Print queue is full (Очередь файлов, ожидающих печати, переполнена) Примеры print file!.1st /с file2.1st - удаляет файлы filel.lst и file2.1st из очереди; print filel.lst file2.1st - ставит файлы filel.lst и file2.1st в очередь; print filel.lst /с file2.1st file3.1st - удаляет файл filel.lst из очереди и ставит в нее файлы file2.1st и file3.1st; Set - установка переменной окружения Формат команды: set переменная = значение Здесь переменная — любая строка, не содержащая знаков равен¬ ства и пробелов. При этом в переменной большие и малые латинские буквы считаются одинаковыми. Значение — любая строка символов. Команда set записывает строку ’’переменная = значение” в специ¬ альную область памяти, зарезервированную для хранения перемен¬ ных окружения. Если данной переменной уже было присвоено какое- то значение, то оно заменяется новым. Прикладные программы могут анализировать область памяти, предназначенную для хранения переменных окружения, и выяснять, установлено ли значение той или иной переменной, и каково значе¬ ние переменной, если оно установлено. Наиболее часто переменные окружения используются для того, чтобы указать, где прикладные программы должны искать вспомогательные файлы.
Справочные сведения о командах MS DOS 199 Примеры set 87 = N set CHIFILES = C:\CHI set LIB = C:\MSC; C:\FORTRAN Значения переменных окружения можно использовать в пакетных командных файлах. Если в командном файле употребить имя пере¬ менной окружения, заключенное с обеих сторон в знаки процента, то оно будет замещено на значение этой переменной. Например, после ввода команды set CHIFILES = C:\CHI строка %CHIFILES% в коман¬ дном файле будет замещена на C:\CHI. Замечания. 1. Как правило, переменные окружения используются для сообщения прикладным программам, где находятся те или иные файлы, т.е. они не меняются между сеансами работы с компьютером. Поэтому их значения, как правило, устанавливают в командном файле AUTOEXEC.BAT, выполняемом при включении компьютера. 2. Если Вы пользуетесь программой Norton Commander или другой програм¬ мой-оболочкой (QDos, PathMinder и т.д.), то перед выдачей команды set надо вый¬ ти из этой программы и ввести команду set непосредственно в ответ на приглаше¬ ние MS DOS — иначе команда set не сработает. 3. Переменные окружения устанавливают также следующие команды MS DOS: Имя команды Имя переменной path path prompt prompt command с параметром /Р comspec Share - установка режима разделения доступа к файлам Режим разделения доступа к файлам необходим при работе ком¬ пьютера в локальной сети. Формат команды: share [/Г:число] [/1:число] Параметры: Дгчисло — устанавливает размер (в байтах) области памяти для записи информации об открытых файлах. Для каждого открытого файла в этой области записывается его полное имя и 11 байт служеб¬ ной информации. По умолчанию размер этой области — 2048 байт; /1:число — максимальное число замков при разделении доступа к файлам. По умолчанию — 20. Пример: share /f:3072 /1:30 Замечание. Если компьютер работает в сети, то целесообразно включить команду share в командный файл AUTOEXEC.BAT, выполняемый при начальной загрузке компьютера.
200 Глава 15 Shift - сдвиг параметров командного файла Формат команды: shift Команда shift в командном файле присваивает новые значения символам %0-%9. При этом %0 присваивается старое значение %1, %1 — старое значение %2 и т.д. %9 присваивается значение следую¬ щего за старым значением %9 параметра в командной строке, а если он не задан, то новое значение %9 — пустая строка. Команду shift можно использовать несколько раз. Например, пусть командный файл xxx.bat вызван следующей командной строкой: ххх аа bb сс . Тогда %0 = "xxx.bat" %1 = "аа” %2 = "bb” %3 = "сс" %4 - %9 = пустые строки После выполнения команды shift: %0 = "аа" %1 = "bb" %2 = "сс" %3 - %9 = пустые строки Sort - сортировка файлов Формат команды: sort [/г] [/+число] [<имя-входного-файла] [>имя-выходного-файла] Команда sort вводит данные со стандартного ввода (по умолчанию — с клавиатуры), сортирует их и выводит на стандартный вывод (по умолчанию — на экран). Режимы: /г — сортировка в убывающем порядке; /+число — сортировка по позициям, начиная с данного числа. На¬ пример, /+10 — сортировка начиная с 10-й позиции в каждой строке. По умолчанию сортировка производится начиная с первой позиции. Примеры sort cunsorted.txt >sorted.txt - чтение файла unsorted.txt, сортировка его и запись результата в файл sorted.txt; dir I sort | more — сортировка оглавления текущего каталога и вывод его на эк¬ ран с паузами между выводом отдельных экранов.
Справочные сведения о командах MS DOS 201 Sys - перенос файлов операционной системы с текущего дисковода на указанный дисковод Формат команды: sys дисковод: Команда sys переносит (копирует) два файла операционной систе¬ мы (они могут называться IO.SYS и MSDOS.SYS или IBMBIO.COM и IBMDOS.COM, или другими именами) с текущего дисковода на диско¬ вод, указанный в команде. Команда sys не переносит на указанный диск командный процес¬ сор COMMAND.COM. Это можно сделать командой сору. Пример sys а: сору c:\command.com а: Замечания. 1 Писк, указанный в команде sys, должен быть пустым, т.е. не содержать файлов, либо уже содержать файлы операционной системы того же размера, что и файлы операционной системы на текущем дисководе. 2. Файлы операционной системы, которые переносятся командой sys, должны особым образом располагаться на диске. Поэтому их нельзя переписать на другой диск командой сору, для их переноса имеются команды sys и format (режим /s). Time - вывести информацию о времени или установить время в компьютере Формат команды: time [часы:минуты] где часы — число от 0 до 24, минуты — число от 0 до 59. Если команда time выдана без параметров, то MS DOS выводит текущее время и просит установить новое значение времени в компь¬ ютере. Если Вы не хотите менять время, нажмите сразу клавишу [Enter]. Примеры time time 12:43 Tree - вывести список каталогов и файлов на диске Формат команды: tree [дисковод:] [/f] Если в команде не указан дисковод, то подразумевается текущий дисковод. Если в команде задан параметр /f, то выводится информация о каталогах и файлах на диске, в противном случае — только информа¬ ция о каталогах. Примеры tree с: — вывод информации о каталогах на экран; tree с: > tree.doc — вывод информации о каталогах в файл tree.doc; tree с: > ргп — вывод информации о каталогах на принтер.
202 Глава 15 Замечание. Команда tree не выводит информацию о суммарном размере файлов, находящихся в каждом каталоге. Эту информацию может вывести про¬ грамма LD из набора программ Norton Utilities. Ver - вывести на экран версию MS DOS Формат команды: ver На экран выводится версия используемой операционной системы MS DOS, например: MS DOS Version 3.30 Verify - установить или отменить режим проверки при записи на диски Формат команды: verify on — включить режим проверки при записи на диски; verify off — выключить режим проверки при записи на диски; verify без параметров — вывести информацию о том, включен или выключен режим проверки при записи на диски. Замечания. 1. Проверка при записи на диск состоит в считывании с дис¬ ка записанных данных и сравнении считанных данных с теми, которые записы¬ вались на диск. 2. Как правило, запись на диск выполняется без ошибок, поэтому режим про¬ верки при записи на диски по умолчанию выключен. Этот режим имеет смысл включать при записи важной информации на дискеты (например, при создании архивных копий файлов), а также при записи на ’’сбойные” дискеты. Хсору - копирование файлов и каталогов Формат команды: хсору имя-файла-или-каталога [имя-файла-или-каталога]... [режимы] Если в команде хсору указано одно имя файла или каталога, то оно обозначает копируемый файл (файлы) или каталог, из которого копируются файлы. Копирование производится в текущий каталог. Если же в команде указано более одного имени файла и/или ката¬ лога, то последнее из них обозначает имя файла (имена файлов), по¬ лучаемого (получаемых) в результате копирования, или имя катало¬ га, в который копируются файлы. Остальные имена файлов и катало¬ гов указывают копируемые файлы и каталоги. В именах файлов мож¬ но употреблять символы * и ?. Режимы: /s — копирование файлов не только из каталогов, указанных в команде, но также и из всех их подкаталогов (как первого уровня, так и более высоких уровней). Файлы из подкаталогов копируются в соответствующие подкаталоги того каталога, в который копируются файлы. Если таких подкаталогов в каталоге, в который копируются
Справочные сведения о командах MS DOS 203 файлы, не существует, то они создаются. Если не задан режим /е, то пустые подкаталоги не копируются; /е — (имеет смысл только вместе с режимом /s) — копирование всех подкаталогов, даже если они пусты; /а — копирование только тех файлов, у которых установлен атри¬ бут ”не архивирован”; /т — копирование только тех файлов, у которых установлен ат¬ рибут ”не архивирован”, после копирования этих файлов атрибут ”не архивирован” отменяется; /с!:дата - копирование только тех файлов, которые были измене¬ ны в указанный день или позднее. Формат ввода даты можно узнать, введя команду date, он может быть: месяц-день-год или день-месяц- год, т.е. /6:02-28-1990 или /d:28-02-1990; /р - команда хсору для каждого файла будет спрашивать, копи¬ ровать его или нет; /v — программа хсору будет проверять, правильно ли скопирован каждый файл; /w — перед копированием команда хсору выдаст сообщение Press any key when ready to start copying files (Нажмите любую клавишу для начала копирования файлов) Вы можете нажать клавишу [Ctrl—С], если хотите отменить копи¬ рование файлов, или любую алфавитно-цифровую клавишу, пробел или [Enter] для начала копирования. Программа хсору в некоторых случаях не может определить, яв¬ ляется ли последнее указанное в команде имя именем файла или име¬ нем каталога. Например, команда хсору ааа bbb может означать либо создание копии файла ааа под именем bbb, либо копирование файла ааа в подкаталог bbb. Если подкаталог bbb существует, то действие программы хсору определено однозначно: она копирует файл ааа в подкаталог bbb. Если же подкаталога bbb не существует, то програм¬ ма хсору не может сама определить, как ей следует поступать. В та¬ ких случаях она выводит вопрос: Does ... specify a file name or directory name on the target (F = file D = directory)? (Задает ли ... имя файла или имя каталога, в который нужно копировать файлы (F = имя файла, D = имя каталога)?) Следует ответить ”F” или ”D”. Если Вам не нравится отвечать на такие вопросы,, воспользуйтесь командой шсору, описываемой в этой главе. Примеры хсору а:\ b:\ /s /е - скопирует все файлы и каталоги диска а: на диск Ь: ; хсору *.doc а:\ /s - копирование всех файлов с расширением .doc из текущего каталога в корневой каталог диска а:. Файлы с расширением .DOC из подкатало¬ гов текущего каталога также копируются в одноименные подкаталоги корневого каталога диска а:. хсору *.* а\ /s /е - копирование всех файлов из текущего каталога и всех его подкаталогов (первого и более высоких уровней) на диск а: в его корневой каталог и соответствующие подкаталоги (создание архивной копии файлов из текущего каталога и его подкаталогов).
204 Глава 15 хсору *.* а:\ /ш /s /е — копирование всех измененных файлов из текущего ка¬ талога и всех его подкаталогов (первого и более высоких уровней) на диск а: в его корневой каталог и соответствующие подкаталоги (обновление архивной копии файлов из текущего каталога и его подкаталогов). Замечания. 1. При попытке перезаписи файла с атрибутом ’’только для чтения” программа хсору выдаст сообщение Access denied (Доступ отвергнут) 2. Если диск, на котором создаются файлы, будет полностью заполнен, про¬ грамма хсору выдаст сообщение File creation error (Ошибка при создании файла) 3. Если задан параметр /s, то каталог, в который копируются файлы, не дол¬ жен быть подкаталогом ни одного из каталогов, из которого копируются файлы. Если это не так, то программа хсору выдаст сообщение Cannot perforin a cyclic copy (Нельзя выполнять циклическое копирование) 4. Если программа хсору в ходе своей работы должна создать подкаталог с не¬ которым именем, а в каталоге имеется файл с таким же именем, то программа хсору выдаст сообщение Unable to create directory (Нельзя создать каталог) Программа хсору по окончании работы устанавливает код возвра¬ та, который может быть проанализирован в пакетном командном файле с помощью переменной ERRORLEVEL: 0 - нормальное завершение программы хсору; 1 — не были найдены файлы, которые надо копировать; 2 — программа хсору была завершена пользователем с помощью на¬ жатия комбинации клавиш [Ctrl-C]; 4 - программа хсору не работала (неверные параметры, файл или ка¬ талог не найдены, мало памяти и т.д.); 5 - пользователь выбрал ’’Abort” (завершить) в своем ответе на сооб¬ щение об ошибке ввода-вывода: Error reading (writing) drive x: Abort, Ignore, Retry? (Ошибка при операции чтения (записи) с диском х: завершить, игнорировать или повторить ?).
ПРИЛОЖЕНИЯ 1. ОСОБЕННОСТИ РАБОТЫ НА КОМПЬЮТЕРАХ С ОДНИМ ДИСКОВОДОМ ДЛЯ ДИСКЕТ Операционная система MS DOS позволяет имитировать работу с двумя дисководами для гибких дисков, если компьютер имеет один дисковод для гибких дисков. В этом случае одному физическому дис¬ ководу для гибких дисков соответствуют два логических дисковода А: и В:. Таким образом, в одной команде можно ссылаться на две ди¬ скеты (или на файлы, находящиеся на двух дискетах). Например, командой сору а:\*.* Ь:\ можно скопировать все файлы из корнево¬ го каталога одной дискеты (а:) в корневой каталог на другую дискету (Ь:): В каждый момент физическому дисководу для гибких дисков со¬ ответствует либо логический дисковод А:, либо логичесий дисковод В:. Если физическому дисководу соответствует логический дисковод А:, а необходимо произвести операцию чтения или записи на диско¬ воде В:, то операционная система MS DOS выдаст сообщение: Insert diskette for drive b: and strike Enter when ready (Вставьте в дисковод дискету, соответствующую дисководу Ь: и нажмите клавишу [Enter]) После того как Вы вставите соответствующую дискету и нажмете клавишу [Enter], физическому дисководу для гибких дисков будет со¬ ответствовать логический дисковод Ь:. Аналогичное сообщение выво¬ дится тогда, когда физическому дисководу для гибких дисков соот¬ ветствует логический дисковод Ь:,.а надо провести чтение или запись с использованием логического дисковода а:. При наличии одного дисковода для гибких дисков выгоднее поль¬ зоваться такими программами, которые реже требуют смены дисков. Например, при использовании команды сору а:*.* Ь: необходимо ме¬ нять дискеты при копировании каждого файла. При использовании для копирования дискет команд diskcopy или хсору потребуется меньшее число смен дискет. Можно также скопировать файлы с од¬ ной дискеты на жесткий диск или на ’’электронный” диск, а затем от¬ туда на другую дискету — часто это самый быстрый способ копирова¬ ния файлов с одной дискеты на другую.
206 Приложение 2 2. СОВЕТЫ ПОЛЬЗОВАТЕЛЯМ, ИМЕЮЩИМ КОМПЬЮТЕРЫ БЕЗ ЖЕСТКОГО ДИСКА 1. При загрузке компьютера с дискеты иногда после ввода коман¬ ды пользователя на экране появляется сообщение: Insert diskette with COMMAND.COM in drive A: and press Enter (Вставьте дискету с файлом COMMAND.COM в дисковод А: и нажмите клавишу Enter.) Причиной появления этого сообщения является то, что часть опе¬ ративной памяти, которую занимал командный процессор MS DOS — файл COMMAND.COM, была освобождена для использования другими программами. Когда это происходит, то при обработке следующей ко¬ манды пользователя та часть командного процессора, которая посто¬ янно находится в оперативной памяти, ищет на диске файл C0MMAND.COM, чтобы загрузить в оперативную память остальную часть командного процессора. Если компьютер загружен с жесткого диска, то, разумеется, файл командного процессора COMMAND.COM всегда находится на том же месте, что и при начальной загрузке. На¬ против, при загрузке компьютера с дискеты файла COMMAND.COM может и не оказаться на диске, находящемся на дисководе А:. Это происходит, если пользователь вставил в дисковод А: другую диске¬ ту. В этом случае на экран выводится приведенное выше сообщение. Для того чтобы избежать появления этого сообщения и связанной с ним необходимости заменять дискеты в дисководе, можно поме¬ щать копии файла COMMAND.COM в корневой каталог у дискет, на которых имеется для этого достаточно свободного места (около 30 Кбайт). Другой способ избежать появления данного сообщения опи¬ сан ниже. 2. Многие программы работают очень медленно, если используе¬ мые ими файлы находятся на дискетах. В этом случае имеет смысл часть оперативной памяти компьютера отвести под ’’электронный” диск, скопировать обрабатываемые файлы на электронный диск, а по¬ сле окончания работы с ними — обратно на дискету. Такой подход имеет еще одно преимущество — дисководы компьютера изнашивают¬ ся значительно меньше. Если Вы постоянно используете ’’электронный” диск, то в команд¬ ный файл AUTOEXEC.BAT целесообразно включить команды для ко¬ пирования командного процессора COMMAND.COM на ’’электронный” диск. Это делается следующими командами (предполагается, что ло¬ гическое имя ’’электронного” диска - С:): сору a:\command.com с: set comspec = c:\command.com После этого Вам уже не будет выдаваться сообщение, требующее вставить в дисковод А: дискету с файлом COMMAND.COM. 3. У компьютера, не имеющего жесткого диска, дисководы изна¬ шиваются значительно интенсивнее. Для уменьшения их износа сле¬ дует располагать программы и данные (если не все, то хотя бы наибо¬ лее часто используемые) на высококачественных дискетах.
Соответствие клавиш на клавиатурах 207 3. СООТВЕТСТВИЕ КЛАВИШ НА КЛАВИАТУРАХ СОВЕТСКИХ И ЗАРУБЕЖНЫХ КОМПЬЮТЕРОВ В настоящей книге клавиши на клавиатуре компьютера обозначаются в соответствии с надписями на этих клавишах, имеющихся на моделях клавиатуры, применяемых в США. На компьютерах советского производства соответствующие клавиши могут называться по-другому. Ниже слева приводятся надписи, имеющиеся на клавишах зарубежных клавиатур, а справа — надписи на аналогичных клавишах советских клавиатур. [Alt] [Break] [Caps Lock] [Ctrl] [Del], [Delete] [End] [Enter], [CR], [Return] [Esc] [Fl]—[F12] [Home] [Ins], [Insert] [Num Lock] [PgDn], [Page Down] [PgUp], [Page Up] [PrScr], [Print Screen] [Scroll Lock] [Shift] [Tab] - [Альт], [Доп] - [Стоп] - [Фикс Верх], [ФПБ] - [Упр] - [Удл], [Удал] - [Кнц], [Конец] - [Ввод] - [Спец], [Ключ] - [Ф1]—[Ф12] - [Нач], [Начало] - [Вст] - [БлкЦифр], [Циф] - [СтрВнз], [СтрВниз] - [СтрВв], [СтрВверх] - [Печ Экр], [Печ] - [Блк прокр] - [Верх] - [Таб] 4. ДЕЙСТВИЯ ПРИ ОШИБКАХ ВВОДА-ВЫВОДА При возникновении непредвиденных ситуаций при работе с устройствами вво¬ да-вывода (например, при попытке чтения с дисковода, на котором нет дискеты) MS DOS выдает пользователю сообщения о возникшей ситуации и запрашивает его о дальнейших действиях. Формат сообщений об ошибках ввода-вывода Сообщения об ошибках ввода-вывода, имеют следующий формат: <причина ошибки> error reading <устройство> - ошибка при чтении (вводе). Или: <причина ошибки> error writing <устройство> - ошибка при записи (выводе). Здесь <устройство> — это drive а: — дисковод А: на дискетах; drive b: — диско¬ вод В: на дискетах; drive с: - дисковод С: (винчестер); PRN - принтер.
208 Приложение 4 При возникновении ошибок на винчестере следует немедленно сообщить об этом ответственному за компьютер или специалистам по техническому обслужива¬ нию компьютеров. Возможные ответы на сообщения об ошибке ввода-вывода А — (Abort) — завершить программу или команду, которая пыталась вы¬ полнить ввод-вывод. R — (Retry) — повторить операцию ввода-вывода. Перед этим ответом же¬ лательно устранить причины ошибки. I — (Ignore) - игнорировать ошибку. Этот ответ может привести к повреж¬ дению информации на диске. Предупреждение. Если сообщение об ошибке ввода-вывода выдано для накопителя на дискетах, не меняйте дискету на дисководе до ответа на сооб¬ щение (за исключением сообщения ’’Invalid disk change”). Причины ошибок ввода-вывода В сообщении об ошибке ввода-вывода <причина ошибки> — одна из следую¬ щих причин: Not ready — устройство не готово. Например, принтер не включен или в состо¬ янии ’’Offline”, дверца дисковода не закрыта и т.д. Следует устранить причину ошибки и выбрать ответ ’’Retry”; Read fault — ошибка при чтении с устройства (обычно с дисковода). Следует проверить, что дискета правильно вставлена в дисковод, и, если она вставлена не¬ правильно, вставить ее правильно и выбрать ответ ’’Retry”; Write fault - ошибка при записи на устройство (обычно на дисковод). Следует проверить, что дискета правильно вставлена в дисковод, и, если она вставлена не¬ правильно, вставить ее правильно и выбрать ответ ’’Retry”; Data — ошибка в данных: MS DOS не может правильно прочесть данные с дис¬ ка (обычно с дефектной дискеты). Следует несколько раз попробовать повторить операцию (выбрать ответ ’’Retry”). Если это не помогает, то надо выбрать ответ ’’Abort” и запустить программу DT для этой дискеты; General failure — необычная ошибка; Non-DOS disk — неправильный формат диска; Sector not found — не находится нужный сектор на диске; Seek - не находится нужная дорожка да диске. При возникновении перечисленных выше ошибок следует несколько раз по¬ пробовать повторить операцию (выбрать ответ ’’Retry”). Если это не помогает, то надо выбрать ответ ’’Abort” и попробовать прочесть дискету на другом компьюте¬ ре; Write protect — попытка записи на дискету с защитой от записи. На такую дискету записать информацию невозможно; No paper — нет бумаги на принтере, принтер не включен или в состоянии ’’Offline”. Устраните причину ошибки и выберите ответ ’’Retry”; Invalid disk change — недопустимая смена дискеты. Вставьте обратно ту диске¬ ту, которую Вы вынули из дисковода, и выберите ответ ’’Retry”.
Тексты программ 209 5. ТЕКСТЫ ПРОГРАММ В данном приложении приводятся тексты следующих программ1: ASCII.PRN — драйвер принтера для преобразования документа ChiWriter в текстовый файл. ASCII_CW.PAS — преобразование текстового файла в документ Chiwriter. ASK.PAS — вывод сообщения на экран и установка переменной ERRORLEVEL в зависимости от ответа пользователя. CRCLIST.PAS — вывод информации о размере и контрольной сум¬ ме файлов (упрощенная версия). CRCTEST.PAS - проверка длины и контрольной суммы файлов для защиты от вируса (упрощенная версия). CW_COLOR.PAS - запуск редактора ChiWriter на мониторе типа EGA с переопределением цветов экрана. DELBAK.BAT - удаление всех файлов с расширением .ВАК с дис¬ ка С:. Эти программы разрешается использовать всем желающим для некоммерческих целей. ASCII.PRN — драйвер принтера для преобразования документа ChiWriter в текстовый файл ;* Драйвер принтера ASCII.PRN для редактора ChiWriter ;* Печать документа ChiWriter с помощью этого драйвера ;* в файл преобразует документ в текстовый файл. ;* Кодировка кириллицы — альтернативная. ;* (С) В.Э.Фигурнов, 1989. А+ А-- FO STANDARD A FO BOLD A FO UNDERLIN A FO ITALIC A FO SMALL A FO ORATOR A FO GOTHIC A FO SMALLGR A FO MATHII A FO GREEK A FO SCRIPT A FO RUSS A Исполнимые модули этих программ, а также полные варианты программ для защиты от вируса CRCLIST и CRCTEST, содержатся в комплекте документации и программ ’’Работа пользователя с персональным компьютером IBM PC”, распространяемым СП ’’Интерквадро” (см. информацию в конце книги). 8 Фигурнов В. Э.
210 Приложение 5 ( таблица перекодировки } FO RUSSBOLD А { таблица перекодировки ) FO RUSSUNDR А { таблица перекодировки } FO RUSSORAT А { таблица перекодировки } FO RUSSITAL А { таблица перекодировки } ; ( Таблица перекодировки ставится ; после каждой разновидности ’’русского” шрифта ) FO LINEDRAW @ тт q A 218 - w A 194 - e A 191 - тт а A 195 - s A 197 - d A 180 - тт Z A 192 - X A 193 - c A 217 - тт г A 214 - t A 210 - У A 183 - тт f A 199 - g A 215 - h A 182 - тт V A 211 - b A 208 - n A 189 - тт U A 218 - i A 194 - о A 191 - тт j A 195 - V A 197 - 1 A 180 - тт m A 192 - z A 193 - A 217 - тт Q A 201 - w A 203 - E A 187 - тт A A 204 - s A 206 - D A 185 - тт Z A 200 - X A 202 - C A 188 - тт R A 213 - T A 209 - Y A 184 - тт F A 198 - G A 216 - H A 181 - тт V A 212 - В A 207 - N A 190 - тт U A \ - I A 179 - 0 A / - тт J A 196 - К A X - L A 196 - тт M A / - < A 179 - > A \ - тт P A 179 - [ A 045 - ] A 045 - тт 1 A 045 - 1 A 045 - / A / - тт p A 179 - { A 045 - } A 045 - тт : A = - II A = - 7 A / - тт A \ - A 186 - i A 179 - i A 179 - тт 2 A 179 - 0 A 186 - 3 A 221 - # A 222 - тт 4 A 219 - $ A 032 - 5 A 178 - % A 032 - тт 6 A 177 - A 032 - 7 A 176 - & A 032 - тт 8 A 176 - * A 176 - 9 A 176 - ( A 176 - тт 0 A 220 - ) A 223 - - A 196 - A 045- - тт = A 196 - + A 205 - \ A \ - T A \ - FO SYMBOL 0 FO FOREIGN FO MATH I ID PITCH=10 DENSITY=240 HMI=0 MICRO=0 SPACE=10 IL PITCH=10 DENSITY=240 HMI=0 MICRO=0 SPACE=10 IN PITCH=10 DENSITY=240 HMI=0 MICRO=0 SPACE=10 ED PITCH=12 DENSITY=240 HMI=0 MICRO=0 SPACE=12 EL PITCH=12 DENSITY=240 HMI=0 MICRO=0 SPACE=12 EN PITCH=12 DENSITY=240 HMI = 0 MICRO=0 SPACE=12 PD PITCH=10 DENSITY=240 hmi=o- MICRO=0 SPACE=10 PL PITCH=10 DENSITY=240 HMI = 0 MICRO=0 SPACE=10 PN PITCH=10 DENSITY=240 HMI=0 MICRO=0 SPACE=10 +G -G $V LF
Тексты программ 211 HORIZONTAL GRBLK=O VERT LF=O FF=O VMI=6 MAX=12 SCAN SCANS=1 PASS NPASS=1 CPASS=1 Pl VERT=6 SCAN=O DR PRN=1 Где { таблица перекодировки } - это следующие строки: тт 1 А 33 - 0 А 34 - $ А 36 - ) А 37 - А 40 - тт А 41 - + А 43 - А 44 - А 45 - & А 46 - тт / А 47 - 0 А 48 - 1 А 49 - 2 А 50 - 3 А 51 - тт 4 А 52 - 5 А 53 - 6 А 54 - 7 А 55 - 8 А 56 - тт 9 А 57 - % А 58 - * А 59 - = А 61 - А 63 - тт \ А 32 - А 95 - | А 124 - F А 128 - < А 129 - тт D А 130 - и А 131 - L А 132 - т А 133 - А 134 - тт р А 135 - В А 136 - Q А 137 - R А 138 - К А 139 - тт V А 140 - Y А 141 - J А 142 - G А 143 - Н А 144 - тт с А 145 - N А 146 - Е А 147 - А А 148 - { А 149 - тт W А 150 - X А 151 - I А 152 - О А 153 - } А 154 - тт S А 155 - М А 156 - п А 157 - > А 158 - Z А 159 - тт f А 160 - t А 161 - d А 162 - и А 163 - 1 А 164 - тт t А 165 - ; А 166 - Р А 167 - b А 168 - д А 169 - тт г А 170 - к А 171 - V А 172 - У А 173 - 3 А 174 - тт д А 175 - h А 224 - с А 225 - п А 226 - е А 227 - тт а А 228 - [ А 229 - W А 230 - X А 231 - i А 232 - тт о А 233 - ] А 234 - S А 235 - ш А 236 - 1 А 237 - тт А 238 - Z А 239 - Эта таблица состоит из определений отображений символов. Каждое определение состоит из четырех элементов. Первый из них — символ, получаемый при нажатии на клавишу в латинском регистре, а третий — код символа, получаемого при нажатии на ту же клавишу в русском регистре, второй и четвертый элементы - всегда А и - . ASCII_CW.PAS - преобразование текстового файла в документ Chiwriter {$R-,S-,D-,E-,O-,I-,F-,A-,N-,L-,V-,M 16000,0,0 } Г {• program ACSII CW; uses Crt, Dos; Программа ASCII_CW.PAS Преобразование текстового файла в документ Chiwriter. Кодировка кириллицы - альтернативная. Формат вызова: ASCII_CW имя-исходного-файла имя-получаемого-файла Язык — Турбо-Паскаль 5.0 (С) В.Э.Фигурнов, 1989.
212 Приложение 5 const { Таблица соответствия букв кириллицы. } { Каждой букве кириллицы соответствует } { символ, находящийся на той же клавише } { в латинском регистре. } TrTab : аггау[#128 .. #255] of char = *F<DULT:PBQRKVYJGHCNEAfWXIO}SM">Z’ + ’f,dult;pbqrkvyjg ’+ * ’ + ’hcnea[wxio]sm1’.z { Таблица соответствия псевдографических } { символов. Каждому псевдографическому } { символу, имеющемуся в альтернативной } { кодировке ГОСТа, соответствует } { подходящий символ из шрифта LINEDRAW } { редактора ChiWriter , } Lined га wSym : array[#176..#223] of char = ’7 65HHhy YD@ECnNom, i j -kFf ZQXWA+SBbTtvVRrgG. u403 #) var InFile, OutFile : text; InFileName, OutFileName : string; s : string; c : char; I : integer; more: boolean; mode : (lat, rus, linedraw); { Удаление ведущих и концевых пробелов из строки } function Trim(S : string) : string; begin while (Length(S) > 0) and (S[Length(S)] <= ’ ’) do Dec(S[0]); w'hile (Length(S) > 0) and (S[ 1] <= ’ ’) do Delete(S, 1, 1); Trim := S; end; { Перевод строки в верхний регистр } function StUpCase(S : string) : string; var I : integer; begin StUpCase := S; for I := 1 to Length(S) do StUpCasefl] := upcase(S[I]); end; { Проверка существования файла с данным именем } function ExistFile(FName : String) : Boolean; var F : file; begin Assign(F, FName); Reset(F, 1); if IoResult = 0 then begin ExistFile := True; Close(F); end else ExistFile := False; end;
Тексты программ 213 begin writeln(’IIpeo6pa3OBaHHe текстового файла в документ ’ChiWriter. (С) В.Э.Фигурнов, 1989.’); { Открытие входного файла } if Paramstr(l) о ” then InFileName := Paramstr(l) else begin repeat write(’Введите имя входного файла: ’); readln(InFileName); until(Trim(InFileName) <> ”); end; InFileName := StUpCase(Trim(InFileName)); if not ExistFile(InFileName) then begin writeln(’BxoflHofi файл ’”, InFileName, ’” не найден.’); halt; end; assign(InFile, InFileName); ($i- ) reset(InFile); {$!+} if IOResult <> 0 then begin writeln(’0niH6Ka при открытии входного файла ’, InFileName); halt; end; { Открытие выходного файла } if Paramstr(2) о ” then OutFileName := Paramstr(2) else begin repeat write(’Введите имя выходного файла: ’); readln(OutFileN ame); until(Trim(OutFileName) <> ”); end; OutFileName := StUpCase(Trim(OutFileName)); if ExistFile(OutFileName) then begin уугНе(*Файл ’ + OutFileName + ’ Уже существует. Продолжить работу [Y/N] ? ’); more := true; while more do begin C := upcase(ReadKey); more := (C <> ’Y’) and (C <> ’N’); if C = #0 then C := readkey; if more then write(#7); end; Writeln(C); if C = ’N’ then halt; end; assign(OutFile, OutFileName); {$i- } rewrite(OutFile); {$i+ } if IOResult <> 0 then begin writeln(’Omn6Ka при открытии выходного файла ”*, OutFileName, ”” ); halt;
214 Приложение 5 end; { Вывод заголовка документа ChiWriter } writeln(OutFile, ’\lcw’); writeln(OutFile, ’\U1 STANDARD’); writeln(OutFile, ’\U2 RUSS’); writeln(OutFile, ’\U7 LINEDRAW’); { Цикл чтения исходного документа } Mode := Lat; while not eof(InFile) do begin readln(InFile, S); writeln(OutFile, ’\+’); for I := 1 to length(s) do begin C := S[i]; if C = ’ ’ then write(OutFile, ’ ’) else if C >= #128 then begin if (C > #175) and (C < #224) then begin if Mode <> Linedraw then begin Mode := Linedraw; write(OutFile, ’\7’); end; write(OutFile, LineDrawSymfC]); end else begin if Mode <> Rus then begin mode := Rus; write(OutFile, ’\2’); end; write(OutFile, TrTab[C]); end; end else begin if Mode <> Lat then begin mode := Lat; write(OutFile, ’\1’); end; if C = ’\’ then write(OutFile, ’\\’) else write(OutFile, C); end; end; writeln(OutFile, ’\,’); end; close(InFile); close(OutFile); writeln(* Конец работы. ’); end. ASK.PAS — вывод сообщения на экран и установка переменной ERRORLEVEL в зависимости от ответа пользователя {$R-,S-,D-,E-,O-,I-,F-,A-,N-,L-,V-,M 2000,0,0 } {*- } {* *} {" Программа ASK.PAS *) I" *} Программа выводит сообщение на экран и ожидает ввода *}
Тексты программ 215 {* пользователем одного из заданных символов. *} {* Значение переменной ERRORLEVEL устанавливается равным *} {* номеру введенного символа в списке. *} {* Формат вызова: ASK ’’сообщение”, список-символов *} {* *} {* Язык - Турбо-Паскаль 5.0 *} {* (С) В.Э.Фигурнов, 1989. *} program ASK; uses Crt; var I : integer; S, Msg : string; C : char; procedure Help; begin writeln(#7); writeln(’OopMaT вызова: ASK ”<сообщение>”,’, ’<набор символов для ответа>’); writein; writeln(’ Пример: ASK ’’Продолжить работу [Y/N] ?”,YN ’); writein; writeln(’ Процедура устанавливает значение’, ’ переменной ERRORLEVEL’); равное номеру введенного символа в списке.’); В приведенном примере: Y - 1, N - 2 .’); { 1-й символ должен быть ” } { ищем второй символ ” } { не найден — останов } writeln(’ writeln(’ halt; end; begin { PrefixSeg:$80 - строка параметров } move(Mem[PrefixSeg:$80], S, Mem[PrefixSeg:$80]+l); if (length(S) <= 5) or (S[l) <> ””) then Help; delete(S,l,l); I := Pos(””, S); if I = 0 then Help; if I = 1 then Msg := ” Msg := Copy(S, 1, I—1); Delete(S, 1, I); { удаляем его из строки S } while(S[l] = ’ ’) do delete(S, 1,1); if (S = ”) or (S[l] <> ’,’) then Help; delete(S,l,l); while(S <> ”) and (S[l] = ’ ’) do delete(S,l,l); if length(S) < 2 then Help; { S — список допустимых } { символов для ввода } { Выводим сообщение } { MSG — выдаваемое сообщение} writein; write(Msg, ’ ’); while true do begin C := ReadKey; if C = #0 then C := ReadKey else { Цикл чтения клавиш. } { Обработка функц. клавиш }
216 Приложение 5 for I := 1 to length(S) do { Поиск в списке} if upcase(C) = upcase(S[I]) then begin writeln(Upcase(C)); halt(I); { Установка ERRORLEVEL } { и выход } end; end; end. CRCLIST.PAS - вывод информации о размере и контрольной сумме файлов (упрощенная версия) {$R-,S-,I-,M 65000,0,0} !* *} Программа CRCLIST.PAS *} {" *} {* Вывод информации о всех файлах *} {* с расширениями .COM, .EXE, .SYS, .LIB, .OBJ, *} {* .TPL, .TPU, (расположенных на текущем диске), *} а также о всех файлах из корневого каталога этого диска. *} {* Выводится следующая информация: *} {* имя файла, его длина, и если указан параметр CRC, *} {* то контрольная сумма. *} {- Для вывода этой информации в файл введите команду *} {•■ CRCLIST > имя-файла *} *}' {- Если в ком-анде указать параметр ALL, то будет *} {* выведена информация о всех файлах на текущем диске: *} {* Пример : CRCLIST ALL или CRCLIST ALL > имя-файла *} {* Пример : CRCLIST ALL CRC > имя-файла *} {* Пример : CRCLIST CRC > имя-файла *} (* *) {* Язык - Турбо-Паскаль 5.0 *} {* (С) В.Э.Фигурнов, 1989. *} {* *} < *} program CRCList; uses Crt, Dos; const TotalFiles : longint = 0; TotalBytes : longint = 0; NeedCRC : boolean = false; ListAll : boolean = false; var CurrDir : PathStr; FName : PathStr; Parm : string[80]; Regs : Registers; Buf : array[0..4095] of byte; CRCTab : array[byte] of word; OutCon : boolean; MsgLine : byte; II, J J : integer;
Тексты программ 217 { Определение того, нужно ли выводить информацию о файле } function NeedFile(P : PathStr) : boolean; const NeedExt : array[1..7] of ExtStr = (’.EXE*, ’.COM*, ’.LIB’, ’.OBJ’, ’.SYS’, ’.TPU’, ’.TPL’); var Dir : DirStr; Name : NameStr; Ext : ExtStr; I : integer; begin NeedFile := true; if List Al Г then exit; FSplit(P, Dir, Name,Ext); if length(Dir) = 3 then { Корневой каталог } exit; for I := 1 to 7 do { Поиск в списке } if Ext = NeedExtfl] then exit; NeedFile := false; end; { Преобразование целого в строку } function Long2Str(L : longint):string; var S : string; begin Str(L, S); Long2Str := S; end; procedure WrChar (C:char); { Вывод символа на экран } begin Regs.АН := 2; Regs.DL := byte(C); MSDOS(Regs); end; procedure WrStr(S : String); { Вывод строки на экран } var I : integer; begin for I := 1 to Length(S) do WrChar(S[I]); WrChar(#13); WrChar(#10); end; procedure Help; begin writeln(’ Эти данные используются программой CRCTEST’, ’ для проверок на наличие вируса.’); \угНе1п(’Формат команды: CRCLIST > имя-выходного-файла’); writelnf writeln(’ writeln(’ или: CRCLIST ALL > имя-выходного-файла’); или: CRCLIST CRC > имя-выходного-файла’); или: CRCLIST CRC ALL > имя-выходного-файла’); writeln(’E^H указан параметр CRC, то выводятся и контрольные суммы.’);
218 Приложение 5 writeln(’Ec^H указан параметр ALL, то выводятся данные о всех файлах’, ’ текущего диска,’); writeln(’ иначе - о файлах с расширениями .COM, .EXE, .SYS, .LIB,’, ’ .OBJ, .TPL, .TPU,’); writeln(’ а также о всех файлах из корневого каталога текущего диска.’); halt; end; { Определение контрольной суммы файла } procedure LengthCRC( var CRC var Error FName : PathStr; : word; : integer); var C, W : word; К : integer; В : Byte; L, Len, IByte : longint; F : file; begin Error := 0; assign(F, FName); {$1-} reset(F, 1); {$1+} if IOResult <> 0 then begin WrStr(FName + * — Файл не найден’); Error := 1; exit; end; Len := FileSize(F); if not NeedCRC then begin close(F); CRC := 0; Exit; end; C := 0; for IByte. := 0 to Len-1 do begin К := IByte and 4095; if К = 0 then begin L := Len - IByte + 1; if L > 4096 then L := 4096; {$1- } BlockRead(F, Buf, L, W); {$1+} if IOResult <> 0 then begin WrStr(#7 + FName + ’ — Ошибка при чтении файла’); Error := 2; close(F); exit; end; end; В := Buf[K]; W := B; С := (C shr 8) xor CRCTab[(C xor W) and $ff ]; end; close(F); CRC := C; end;
Тексты программ 219 { Инициализация таблицы для подсчета CRC } procedure CRCTablnit; var С, W, К, I : word; begin for I := 0 to 255 do begin C := 0; W := I; for К := 1 to 8 do begin if ((C xor W) and 1) = 1 then С := (C shr 1) xor $A001 else С := C shr 1; W := W shr 1; end; CRCTab[I] := C; end; end; { Рекурсивный просмотр всех каталогов на диске } procedure SearchDir(Dir : PathStr); var SRec : Search Rec; CRC : word; Error : integer; Len : Longint; begin if Dir[Length(Dir)J <> ’\’ then Dir := Dir + ’\’; FindFirst(Dir+’*.*’, AnyFile, SRec); while DosError = 0 do begin with SRec do { Просмотр каталога } if Attr and 24 = 0 then begin FName := Dir + Name; if NeedFile(FName) then begin LengthCRC(FName, CRC, Error); if Error = 0 then begin if NeedCRC then WrStr(FName + ’ ’ + Long2Str(Size) + ’ ’ + Long2Str(CRC)) else WrStr(FName + ’ ’ + Long2Str(Size)); TotalFiles := TotalFiles + 1; TotalBytes := TotalBytes + Size; gotoxy(l, MsgLine); write(’O6pa6oTano файлов: TotalFiles, ’, байтов: ’, TotalBytes) ; end; end; end; FindNext(SRec); { Поиск следующего файла } end; { Просмотр подкаталогов } findfirst(Dir+’*.*’, AnyFile, SRec); while DosError = 0 do begin with SRec do if (Attr and 16 <> 0) and (Name[l] <> ’.’) then begin SearchDir(Dir+Name);
220 Приложение 5 Regs.АН := $1А; { Восстановление DTA } Regs.DS := Seg(SRec); Regs.DX := Ofs(SRec); MSDos(Regs); end; FindNext(SRec); { Поиск каталога } end; end; begin Direct Video := true; write(’CRCLIST: Вывод длин и CRC файлов на текущем диске.’, * (С) В.Э.Фигурнов, 1989.’); with Regs do begin AX := $4400; BX 1; MsDos(Regs); if (DX and $80) = 0 then OutCon := False else OutCon := (DX and $02 <> 0) or (DX and $01 <> 0); end; if OutCon then Help; writein; for JJ := 1 to 2 do begin Parm := ParamStr(JJ); for II := 1 to length(Parm) do Parm[II] := upcase(Parm[IIJ); if Parm = ’ALL’ then ListALL := true; if Parm = ’CRC’ then NeedCRC := true; end; MsgLine := WhereY; FileMode := 0; GetDir(0, CurrDir); CRCTablnit; SearchDir(copy(CurrDir,l,3)); writein; end. CRCTEST.PAS - проверка длины и контрольной суммы файлов для защиты от вируса (упрощенная версия) ($R-,S-,I-,B-,M 16000,0,0} {* *} {* Программа CRCTEST.PAS *} {* -А-} Проверка длин и контрольных сумм файлов *} {* Формат вызова: CRCTEST имя-управляющего-файла *} Каждая строка управляю?..файла должна иметь вид: *} {* имя-срайла длина-файла контрольная-сумма-файла *} или *} {* имя-файла длина-файла *} {* (в этом случае контрольная сумма не проверяется) *}
Тексты программ 221 {* Язык — Турбо-Паскаль 5.0 *} {* (С) В.Э.Фигурнов, 1989. *} program CRCTest; uses Dos; const ErrNo : integer = 0; Alarm : boolean = false; var Buf : array[0..4095] of byte; CRCTab : arrayfbyte] of word; { Вывод сообщения об ошибке } procedure ErrMsg(S : string; Dangerous : boolean); begin Inc(ErrNo); if ErrNo = 1 then begin writeln(’CRCTEST: Проверка длин и контрольных сумм файлов. ’ (С) В.Э.Фигурнов, 1989.’); writein; end; if S <> ” then writeln(S); if Dangerous then Alarm := true; end; { Выделение К-го ’’слова” из строки, } { слова разделяются пробелами } function GetWordStr(S : string; К : integer) : string; var I : integer; V, R : string; begin R := ”; V := S; for I := 1 to К do begin while ((length(V) > 0) and (V[l] = ’ ’)) do delete(V, 1, 1); if I <> К then while ((length(V) > 0) and (V[l) <> ’ ’)) do delete(V, 1, 1); end; I := 1; while ((I <= length(V)) and (V[I] <> ’ ’)) do begin R := R 4- V[I]; Inc(I); end; GetWordStr := R; end; { Преобразование целого в строку } function Long2Str(L : longint):string; var
222 Приложение 5 S : string; begin Str(L, S); Long2Str :== S; end; { Преобразование строки в целое } function Str2Long(S : string; var L : longint) : boolean; var Code : integer; begin Val(S, L, Code); Str2Long := (Code = 0); end; { Определение длины файла и его контрольной суммы } procedure LengthCRC( FName : PathStr; NeedLength : boolean; var Len var CRC var Error : longint; : word; : integer): var C, W : word; К : integer; В : Byte; F : file; L, IByte : longint; begin Error := 0; assign(F, FName); FileMode := 0; ($1- } reset(F, 1); {$1+ } if IOResult <> 0 then begin ErrMsg(FName + ’ - Файл не найден’, true); Error := 1; exit; end; Len := FileSize(F); if not NeedLength then begin close(F); exit; end; C := 0; for IByte := 0 to Len-1 do begin К := IByte and 4095; if К = 0 then begin L := Len - IByte + 1; if L > 4096 then L := 4096; {$1- } BlockRead(F, Buf, L, W); {$1+} if IOResult <> 0 then begin ErrMsg(FName + ’ — Ошибка при чтении файла’, false); Error := 2; close(F); exit;
Тексты программ 223 end; end; В := Buf[K]; W := В; С := (С shr 8) xor CRCTab[(C xor W) and $ff ]; end; close(F); CRC := C; end; { Инициализация таблицы для подсчета CRC } procedure CRCTablnit; var C, W, К, I : word; begin for I := 0 to 255 do begin C := 0; W := I; for К := 1 to 8 do begin if ((C xor W) and 1) = 1 then С := (C shr 1) xor $A001 else С := C shr 1; W := W shr 1; end; CRCTabfl] := C; end; end; { Проверка длин и контрольных сумм в файлах из списка } procedure TestCRC(FCName : PathStr); var FC : text; S, SL, SC : string; FName : PathStr; LenC, Len, CRCC : longint; CRC : word; Error : integer; NeedCRC, ValidLen, ValidCRC : boolean; begin assign(FC, FCName); FileMode := 0; {$1- } reset(FC); {$1+ } if IOResult <> 0 then begin ЕггМ^(’Управляющий файл ’+ FCName 4- ’ не найден’, false); halt; end; while(not eof(FC)) do begin readln(FC, S); FName := GetWordStr(S, 1); if FName <> ” then begin FName := FExpand(FName); SC := GetWordStr(S, 3); SL := GetWordStr(S, 2); ValidLen := (SL <> ”) and Str2Long(SL, LenC); ValidCRC := (SC <> ”) and Str2Long(SC, CRCC); NeedCRC := (SC <> ”); LengthCRC(FName, NeedCRC, Len, CRC, Error);
224 Приложение 5 if Error = 0 then begin if SL = ” then ErrMsg(FName + ’ — размер файла не указан’, false) else if not ValidLen then ErrMsg(FName + ’ - размер файла - не число’, false) else if Len <> LenC then ErrMsg(FName + ’ - размер файла ’ + Long2Str(Len) + *, а должен быть ’ + Long2Str(LenC), true) else if NeedCRC and not ValidCRC then ErrMsg(FName + ’ — контрольная Сумма — не число’, false) else if NeedCRC and (CRC <> CRCC) then ErrMsg(FName + ’ — контрольная сумма ’ 4- Long2Str(CRC) + ’, а должна быть ’ + Long2Str(CRCC), true); end; end; end; close(FC); end; begin CRCTablnit; if ParamCount = 0 then begin ErrMsg(”, false); writeln(’ Формат вызова: CRCTEST имя-управляющего-файла’); writeln(’ каждая строка управляющего файла должна иметь вид:’); writeln(’ имя-файла длина-файла контрольная-сумма-файла’); writeln(’ или:’); writeln(’ имя-файла длина-файла’); writelnf (в последнем случае контрольная сумма не проверяется)’); end else TestCRC(Paramstr(l)); if Alarm then begin writeln(#7); writeln(’***** Внимание: в компьютере может быть вирус!!! ’, »*****’). halt(l); end; end. CWCOLOR.PAS — запуск редактора ChiWriter на мониторе типа EGA с переопределением цветов экрана {$R-,S-,D-,E-,O-,I-,F-,A-,N-,L-,V-,M 1024,0,0 } <* {* *} {* Программа CWCOLOR.PAS *} {* *} {" Переопределение цветов монитора EGA *} {- при вызове ChiWriter *} {* При использовании этой программы файл CW.EXE *} '* следует переименовать в CW_PGM.EXE, *} {* а данную программу назвать CW.EXE *} {* Константа CWName в данной программе должна содержать *} {* полное имя программы ChiWriter *} {* *} {* Язык - Турбо-Паскаль 5.0 *} {* (С) В.Э.Фигурнов, 1989. *} *}
Тексты программ 225 program CW Color; uses DOS; const Color =3; { Цвет фона (можно выбрать 7)} CWName = ’C:\CHI\CW_PGM.EXE’; { Имя программы ChiWriter’a } type PtrString = "string; var R : Registers; Save_Ega_Ptr : Pointer; EgaPTRArray : Array[0..6] of pointer; EgaParamTabl : array[0..28] of record Dumml : array[1..35] of byte; ColTab : array[0..15] of byte; Dumm2 : byte; Border : byte; Dumm3 : Array[l..ll] of byte; end; PtrParamStr : PtrString; begin { Сохранение адреса таблицы параметров EGA } Save_Ega_Ptr := Pointer(MEML[0000:$04A8]); { Установка собственной таблицы параметров EGA } move(Save_Ega_Ptr", EgaPTRArray, 28); move(EgaPTRArray[OJ", EgaParamTabl, 29*64); MemL[0000:$04A8] := longint(@EGaPtrArray); EgaPtrArrayfO] := @EgaParamTabl; { Заполнение нашей таблицы цветов } EgaParamTabl[18].ColTab[0] := Color; EgaParamTabl[18].ColTab[15] := 0; EgaParamTabl[ 18].Border. := Color; EgaParamTabl[22].ColTab[0] := Color; EgaParamTabl[22].Border := Color; EgaParamTabl[22].ColTab[7] := 0; { Переустановка текущих цветов EGA } R.AH := $10; R.AL := 0; R.BL := 7; R.BH := 0; Intr($10,R); R.AH := $10; R.AL := 0; R.BL := 0; R.BH := Color; Intr($10,R); R.AH := $10; R.AL := 1; R.BH := Color; Intr($10,R); PtrParamStr := Ptr(PrefixSeg, $80); exec(CWName, PtrParamStr"); { Вызов ChiWriter’a } { Восстановление исходной таблицы } { параметров EGA. } MemL[0000:$04A8] := longint(Save_Ega_Ptr); { Установление обычных цветов EGA } R.AH := $10; R.AL := 0; R.BL := 0; R.BH := 0; Intr($10,R); R.AH := $10; R.AL := 0; R.BL := 7; R.BH := 7; Intr($10,R); R.AH := $10; R.AL := 1; R.BH := 0; Intr($10,R); end. DELBAK.BAT - удаление всех файлов с расширением .ВАК с диска С: ECHO OFF REM Удаление всех файлов с расширением .ВАК с диска С: REM REM (С) В.Э.Фигурнов, 1989. WIPEFILE С:\*.ВАК /N /S
226 Приложение 6 6. КОДИРОВКИ символов Зарубежные компьютеры, совместимые с компьютером IBM PC, имеют еди¬ ную кодировку символов, т.е. таблицу кодов, в которой каждому изображаемому на экране символу соответствует код от 0 до 255. Однако в этой таблице отсутству¬ ют символы кириллицы (русские буквы), поэтому в СССР и Болгарии были созданы различные модификации таблицы кодов IBM, в которой некоторым кодам соответствуют символы кириллицы. К сожалению, эти кодировки не согла¬ суются между собой, и поэтому программы, выдающие сообщения на русском язы¬ ке, при переносе на компьютер с другой кодировкой работают неправильно. Однако все эти кодировки совпадают с кодировкой IBM для символов с кодами 0-127 (в частности, для латинских букв и цифр, знаков пунктуации и т.д.), поэ¬ тому программа, которая выводит на экран сообщения на английском языке, бу¬ дет работать одинаково вне зависимости от того, какая кодировка символов ис¬ пользуется в компьютере. В СССР наиболее распространены следующие четыре вида кодировок кириллицы. 1. Альтернативная кодировка ГОСТа. В этой кодировке символы кириллицы имеют коды: А-Я - 128-159, а-п - 160-175, р-я - 224-239. Псевдографические символы находятся на тех же местах, что и в кодировке IBM. 2. Основная кодировка ГОСТа. В этой кодировке символы кириллицы имеют коды: А-Я — 176—207, а-я — 208—239, т.е. перекрывают диапазон псевдографиче¬ ских символов в кодировке IBM. Поэтому зарубежные программы, выводящие на’ экран псевдографические символы, крайне неудобно использовать, если на ком¬ пьютере установлена основная кодировка ГОСТа. 3. Кодировка MIC (она же ’’старая” кодировка, она же основная кодировка до принятия ГОСТа). В этой кодировке символы кириллицы имеют коды: А-Я - 128—159, а-я — 160—191, т.е. частично перекрывают диапазон псевдографических символов в кодировке IBM. 4. Кодировка КОИ-8. В этой кодировке символы кириллицы имеют коды: А-Я — 224—254 (не в алфавитном порядке), а-я - 192-223 (не в алфавитном порядке). Эта кодировка имеет такие же недостатки, как и основная кодировка ГОСТа. Кроме того, в ней затруднена сортировка русских текстов и отсутствует символ ”Ъ” (прописной твердый знак). По мнению автора, наиболее целесообразно употребление альтернативной ко¬ дировки ГОСТа, так как в ней все псевдографические символы имеют те же коды, что и в кодировке символов IBM. При этом обеспечивается возможность примене¬ ния зарубежных программ без изменений. В альтернативной кодировке ГОСТа символы кириллицы расположены в тех позициях, в которых в кодировке IBM расположены относительно редко используемые символы национальных алфави¬ тов, греческие буквы и некоторые математические символы. Альтернативная кодировка ГОСТа отличается от кодировки IBM в позициях 240—255, где в кодировке IBM располагаются различные математические и специ¬ альные символы. Часто на компьютерах используется вариант кодировки, кото¬ рый совпадает с альтернативной кодировкой ГОСТа везде, кроме позиций 240—255 (иногда 242—255), где используется кодировка символов IBM. В табл. Г16.1 приведена общая часть всех кодировок — символы с кодами 0—127, а в табл. П6.2--П6.7 — соответственно символы с кодами 128—255 в кодировке IBM, альтернативной кодировке ГОСТа, модифицированной альтернативной кодировке ГОСТа, основной кодировке ГОСТа, кодировках MIC и КОИ—8. В табл. П6.9 приведены кодировки символов кириллицы. В табл. П6.9, П6.10, П6.11 представлены кодировки символов для построения линий и таблиц и символов для заполнения фона. В кодировке IBM символы кириллицы отсутствуют, а символы для построения линий и таблиц и для заполнения фона имеют те же коды, что и в альтернативной кодировке ГОСТа.
Кодировки символов 227 Таблица П6.1. Символы с кодами 0-127 (общая часть всех кодировок) 0 - 16 - к 32 - 48 - в 64 - 8 80 р 96 - .112 - P 1 - © 17 - 4 33 - • 49 -1 65 - А 81 Q 97 - a ИЗ ч 2 _ □ 18 - г 34 - 50 - 2 66 - В 82 - R 98 - Ъ 114 - г 3 - О 19 - !! 35 - It 51 - 3 67 - С 83 - S 99 - с 115 - s 4 - ♦ 20 - 41 36 - $ 52 - 4 68 - В 84 - Т 100 d 116 -1 5 - ❖ 21 § 37 - 7. 53 - 5 69 - Е 85 - и 101 -• е 117 - а 6 - ♦ 22 - . 38 - & 54 - 6 70 - F 86 - и 102 - F 118 - V 7 _ * 23 1 39 - 55 - 7 71 - G 87 - и 103 - sr 119 - w 8 а 24 - t 40 - ( 56 - 8 72 - Н 88 - X 104 - h 120 - X 9 - о 25 - 1 41 - ) 57 - 9 73 - I 89 - Ч 105 - i 121 У 10 3 26 42 - м 58 74 - J 90 - Z 106 - j 122 - z 11 - 6 27 43 - ♦ 59 - » 75 - К 91 - [ 107 - к 123 - < 12 - 9 28 _ 1— •14 - » 60 - < 76 - L 92 - S 108 - 1 124 ■ - i 13 - Г 29 _ * 45 - 61 - = 77 - М 93 -1 109 - m 125 - } 14 Л 30 _ А 46 - 62 - > 78 - N 94 А 110 - n 126 АГ 15 - * 31 - ▼ 47 - / 63 _ ? 79 - 0 95 111 - о 127 _ A Таблица П6.2. Кодировка IBM - символы с кодами 128-255 128 - Q 144 - E 129 - u 145 - » 130 - ё 146 - ft A i3i - a 147 - О 132 - a 148 - О ч 133 - a 149 - О ♦ А 134 - a 150 - U 135 - 9 151 - й A 136 - e 152 - У 137 - ё 153 - 9 138 - ё 154 - U 139 - 1 155 - С 140 - 1 156 - £ 141 - 1 157 - ¥ 142 - A 158 - ft 143 - Д 159 - f 175 - * 191 - 1 160 - a 176 - УУ z ж 161 - 1 177 - i z 162 - О 178 - 1 z 163 - а 179 - 1 | 164 - П 180 - -| ■ 165 - N 181 - =1 a. 166 - “ 182 - | о 167 - “ 183 - 1 168 - L 184 - 1 169 - r“ 185 - 1| 170 - I 186 - || 171 - 187 - fl 172 - $4 188 - 173 - • 189 - -И 174 - « 190 - 192 - 208 - 193 - 209 - у 194 - у 210 - и 195 - |- 211 - Ч 196 - — 212 - 197 - ф 213 - f 198 - Is 214 - [j 199 - II 215 - Ц 200 - * 216 - + 201 - If 217 - J 202 - 218 - г 203 - If 219 - | 204 - || 220 - и 205 - = 221 - | 206 - I} 222 - | 207 - — 223 - И 224 - « 240 - 225 - Р 241 - 226 - Г 242 - .227 - П 243 - III + 1 *1 vl 228 - Е 244 - f 229 - V 245 - J 230 - Р 246 - т 231 - т 247 - ~ 232 - г 248 - Ф 233 - е 249 - • 234 - в 250 - - 235 - з 251 - 4" 236 _ а» 252 - 11 237 - 0 253 - 2 238 - € 254 - ■ 239 - Л 255 -
228 Приложение 6 Таблица П6.3. Альтернативная кодировка ГОСТа ~ символы с кодами 128—255 128 - А 144 - Р 160 - а 176 - & 192 - L 208 _ Я 224 - Р 240 - Ё 129 - Б 145 - С 161 - б fl 193 - J- 209 - т 225 - G 211 - ё 130 - В 146 - Т 162 - В !78-| 194 - у 210 - и 226 - Т 242 - ✓ 131 - Г 147 - а 163 - г 179 - | 1.95 - |- 211 _ и 227 - У 243 - х 132 - Ц 148 - Ф 164 - Д 180 - -| 196 - — 212 _ L 228 - ♦ 244 - Z 1зз - Е 149 -X 165 - е 181 - =| 197 - }• 213 - F 229 - X 245 - V 134 - Ж 150 - Ц 166 - ж 182 - fl 198 - 214 - BI 230 - Ц 246 - 135 - 3 151 - Ч 167 - 3 183 - Ц 199 - || 215 л 231 - Ч 247 - * 136 - И 152 -Ш 168 - И 184 - 200 - й 216 - + 232 - Ш 248 - i 137 - И 153 -Щ 169 - Й 185 - 1| 201 - 17 217 _ J 233 - Щ 249 - Т 138 - К 154 - Ъ 170 - К 186 - П 202 - “ 218 - г 234 - Ъ 250 - *Г 139 - А 155 - Ь1 171 - Л 187 - Ц 203 - if 219 1 235 - Ы 251 - ± 140 - М 156 - Ь 172 - М 188 - 204 - R 220 - ■ 236 - Ь 252 - N’ 141 -Н 157 - Э 173 - Н 189 - 205 - = 221 1 237 - а 253 - X; 142 - 0 158 - Ю 174 - О 190 - J 206 - =Ц 222 1 238 - И> 254 - ■ 143 - П 159 - Я 175 - П 191 - 1 207 - “ 223 _ Я 239 - Я 255 - Таблица П6.4. Модифицированная альтернативная кодировка ГОСТа - символы с кодами 128-255 128 - А 144 - Р 160 - а 176 - $ 192 - L 208 _ Я 224 - P 240 - Ё 129 - Б 145 - С 161 - б 177 1 193 - -L 209 - т 225 - G 241 - ё 130 - В 14S - Т 162 - В 178 1 194 - у 210 - я 226 - T 242 - > 131 - Г 147 - а 163 - г 179 1 195 - |- 211 _ li 227 - У 243 - < 132 - Д 148 - Ф 164 - Д 180 1 196 - — 212 _ L 228 - Ф 244 - Г 1зз - Е 149 - X 165 - е 181 ■1 197 - 213 - Г 229 - X 245 - J 134 - Ж 150 - Ц 166 - ж 182 -1 198 - J1 214 - IT 230 - Ц 246 - V 135 - 3 151 -Ч 167 - 3 183 - л 199 - || 215 -« 231 - 4 247 - х 136 - И 152 - В! 168 - И 184 200 - й 216 - + 232 - III 248 - о 137 - И 153 -Ц 169 - Й 185 11 201 - |f 217 _ J 233 - Щ, 249 - 138 - К 154 - Ъ 170 - К 186 й 202 - - 218 - г 234 - Ъ 250 - 139 - <1 155 - Ы 171 - Л 187 11 203 - iy 219 s 235 - Ы 255 - 140 - Н 156 - Ь 172 - М 188 _ я 204 - |f 220 - n 236 - Ь 252 - № 141 -Н 157 - Э 173 - Н 189 _ л 205 - = 221 1 237 - а 253 - 142 - 0 158 - Ю 174 - О 190 _ J 206 - if 222 1 238 - Ю 254 - ■ 143 - П 159 - Я 175 - П 191 -1 207 - - 223 _ ■ 239 - Я 255 -
Кодировки символов 229 Таблица П6.5. Основная кодировка ГОСТа - символы с кодами 128—255 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 X 144 - 1г 160 - Г 176 - А 192 - Р 208 - а 224 - Р 240 - Ё _ Л 145 - 11 161 1 177 - Б 193 - С 209 - б 225 - С 241 - ё - т 146 - и 162 - J 178 - В 194 - Т 210 - В 226 - Т 242 - Z - 1 147 - ц 163 - L 179 - Г 195 - 9 211 - Г 227 - У 243 - ■ч 11 148 - = 164 - - 186 - д 196 - Ф 212 - Д 228 - Ф 244 - ✓ - л 149 - II 165 - 1 181 - Е 197 - X 213 - е 229 - X 245 - X -1 150 - li 166 - т 182 Ж 198 - Ц 214 - Ж 230 - Ц 246 - - 1Г 151 - 11 167 - 1 183 - 3 199 - Ч 215 - 3 231 - Ч 247 - ♦- _ ц 152 - л 168 - ± 134 -И 200 - 111 216 - И 232 - Ш 248 - _ 1= 153 - II 169 - 1 185 - И 201 -Щ 217 - Н 233 - Щ 249 - t Г 154 - 11 170 - I 186 - К 202 - Ъ 218 - К 234 - Ъ 250 - -г _ Л 155 - 171 - 1 187 - Л 203 - Ы 219 - /1 235 - Ы 251 - + _ J 156 - i 172 - ■ 188 М 204 - Ь 220 - М 236 - Ь 252 - Ы‘ 157 - 1 173 - 1 189 - Н 205 - 3 221 - Н 237 - Э 253 - X -II 158 - и 174 - 1 190 - 0 206 - Ю 222 - О 238 - Ю. 254 - ■ - л 159 - + 175 - ■ 191 - п 207 - Я 223 - П 239 - Я 255 - Таблица П6.6. Кодировка MIC (основная до принятия ГОСТа, или болгарская) - символы с кодами 128—255 - А 144 - Р 160 - а 176 - Р 192 - 1- 208 - 224 - а 240 - = - Б 145 - С 161 - б 177 - С 193 - -L 209-j 225 - Р 241 - ♦ - В 146 - Т 162 - В 178 - Т 194 - т 2Ю-1 226 - Г 242 - > - Г 147 - 9 163 - Г 179 - а 195 - |" 211 - | 227 - И 243 - < - д 148 - Ф 164 - Д 180 - Ф 196 - — 212 - “| 228 - Е 244 - Г - Е 149 - X 165 - е 181 - X 197 - -|- 213 - N’ 229 - (Г 245 - J - Ж 150 - Ц 166 - ж 182 - Ц 198 - 1| 214 - X 230 - Р 246 - Т - 3 151 -Ч 4.67 - 3 183 - Ч 199 - || 215 - Ц 231 - Т 247 - X - И 152 -Ш 168 - И 184 - Ш 200 - ® 216 - 232 - 5 248 - о -И 153 -Щ 169 - Й 185 - 111 201 - И 217 - J 233 - 9 249 - • -К 154 - Ъ 170 - К 186 - Ъ 202 - — 218 - [ 234 Q 250 - • - А 155 - Ы 171 - /1 187 - Ы 203 - 219 - | 235 - 5 251 - - м 156 - Ь 172 - М 188 - Ь 204 - | 220 - и 236 - ® 252 - П - н 157 - 3 173 - Н 189 - Э 205 - = 221 - | 237 - 0 253 - 2 -0 158 - Ю 174 - О 190 - Ю 206 - § 222 - | 238 - 6 254 - ■ -П 159 - Я 175 - П 191 - Я 207 - 1 223 - И 239 - П 255 -
230 Приложение 6 Таблица П6.7. Кодировка КОИ-8 — символы с кодами 128—255 128 - L 144 - Л 160 - а 176 - 00 192 - ГО 208 - П 224 - Ю 240 - П 129 - J- 145 - т 161 - 1 177 193 - а 209 - Я 225 - А 241 - Я 130 - т 146 - л 162 - 6 ИВ-1 194 - б 210 - Р 226 - Б 242 - Р 131 - j" 147 - ц 163 - й 179 - | 195 - Ц 211 - G 227 - Ц 243 - С 132 - — 148 - L 164 - П 180 - -| 196 - Д 212 - Т 228 - Д 244 - Т 133 - -|- 149 - Г 165 - N 181 - 4 197 - е 213 - У 229 - Е 245 - У 134 - |= 150 - П 166 - а 182 - fl 198 - Ф 214 - Ж 230 - Ф 246 -Ж 135 - Н 151 - * о 167 - - 183 - Ц 199 - Г 215 - В 231 - Г 247 - В 136 - й 152 - + 168 - L 184 - 200 - X 216 - Ь 232 - X 248 - Ь 137 - ff 153 - J 169 - г- 185 - fl 201 - И 217 - Ы 233 - И 249 - Ы 138-й 154 - Г 170 - 186 - || 202 - Й 218 - 3 234 - И 250 - 3 139 - =й 155 - 1 171 - 187 - =П 203 - К 219 - Ш 235 - К 251 -Ш 140 - б 156 - ■ 172 - % 188-й 204 - /1 220 - Э 236 - И 252 - 3 141 - = 157 - 1 173 - • 189 - й 205 - М 221 - Щ 237 - Н 253 -Щ 142 - 158 - 1 174 - « 190 - 206 - Н 222 - Ч 238 - Н 254 -Ч 143 - — 159 - ■ 175 - > 191 - т 207 - О 223 - Ъ 239 - 0 255 - Таблица П6.8. Кодировки символов для рисования линий Alt Mai MIC Koi Alt Mai MIC Koi | 179 165 211 179 - 196 164 196 132 || 186 149 199 186 = 205 148 205 141 Обозначения: Alt Mai MIC KOI — альтернативная кодировка ГОСТа; — основная кодировка ГОСТа; — кодировка MIC (или болгарская); — кодировка КОИ—8.
Кодировки символов 231 Таблица П6.9. Кодировки символов кириллицы Alt Mai MIC Koi Alt Mai MIC Koi А 128 176 128 225 a 160 208 160 193 ■ Б 129 177 129 226 6 161 209 161 194 В 130 178 130 247 в 162 210 162 215 Г 131 179 131 231 г 163 211 163 199 д 132 180 132 228 Д 164 212 164 196 Е 133 181 133 229 е 165 213 165 197 Ё 240 240 ё 241 241 ЛТЛ JTV 134 182 134 246 ж 166 214 166 214 3 135 183 135 250 3 167 215 167 218 и 136 184 136 233 и 168 216 168 201 й 137 185 137 234 й 169 217 169 202 к 138 186 138 235 к 170 218 17 0 203 л 139 187 139 236 л 171 219 171 204 м 140 188 140 237 м 172 220 172 205 н 141 189 141 238 н 173 221 173 206 О 142 190 142 239 о 174 222 174 207 п 143 191 143 240 п 175 223 175 208 р 144 192 144 242 р 224 224 176 210 с 145 193 145 243 с 225 225 177 211 т 146 194 146 244 т 226 226 178 212 У 147 195 147 245 У 227 227 179 213 ф 148 196 148 230 ф 228 228 180 198 X 149 197 149 232 X 229 229 181 200 ц 150 198 150 227 ц 230 230 182 195 ч 151 199 151 254 ч 231 231 183 222 ш 152 200 152 251 ш 232 232 184 219 Щ 153 201 153 253 щ 233 233 185 221 ъ 154 202 154 ъ 234 234 186 223 ы 155 203 155 249 ы 235 235 187 217 ь 156 204 156 248 ь 236 236 188 216 э 157 205 157 252 э 2 37 237 189 220 ю 158 206 158 224 ю 238 238 190 192 я 159 207 159 241 я 239 239 191 209
232 Приложение 6 Таблица П6.10. Кодировки символов для рисования таблиц Alt Mai MIC Koi Alt Mai MIC Koi Alt Mai MIC Koi г 218 160 218 154 T 194 166' 194 130 1 191 161 207 191 р 195 169 195 131 . + 197 170 197 133 d 180 167 212 180 L 192 163 192 128 ± 193 168 193 129 J 217 162 217 153 1г 201 144 201 137 v 203 150 203 139 il 187 145 215 187 1^ 204 153 204 140 JL 1Г 206 154 206 142 dl 185 151 198 185 Ik 200 147 200 136 JL 202 152 202 138 JJ 188 146 216 188 (Г 214 143 150 ТГ 210 135 146 T 183 133 183 199 142 135 IP 215 158 151 il 182 132 182 IL 211 136 147 JL 208 129 144 JJ 189 139 189 F 213 138 149 T 209 130 145 =1 184 134 184 h 198 141 134 + 216 159 152 =1 181 131 181 212 137 148 -L 207 128 143 =1 190 140 190 Таблица П6.11. Кодировки символов для заполнения фона
ПРЕДМЕТНЫЙ УКАЗАТЕЛЬ А AUTOEXEC.BAT 28, 160, 180 В BIOS см. Базовая система ввода- вывода 26 с ChiWriter (редактор текстов) 82, 172 вид экрана 85 вызов 83, 84 информационная строка 86 меню 86 получение помощи 87 установка на жесткий диск 112 экспорт и импорт текстовых файлов 109, 110, 209, 211 CONFIG.SYS (файл конфигурации MS DOS) 26, 27, 28, 160 команда BREAK 161 команда BUFFERS 161 команда COUNTRY 38, 161 команда DEVICE 159, 161, 163 команда FILES 161 команда SHELL 161 Е ERRORLEVEL переменная см. Командный файл 118 I IBM PC 9 IBM PC AT 11 IBM PC XT 11 PS/2 11 включение и выключение 10, 25, 42 информация о конфигурации 47 контроллер 11 порт ввода-вывода 11 асинхронный (СОМ1-СОМЗ) 11, 31 параллельный (LPT1-LPT4) 11, 31 процессор 11 м MS DOS: диалог с пользователем 22, 49 драйверы устройств 26, 145 загрузчик 26, 27, 145 информация о версии MS DOS 202 командный процессор COMMAND.COM 23, 24, 26, 28, 115, 145, 157, 162, 179, 186, 201, 206 команды см. Команды MS DOS 23 начальная загрузка 27 перезагрузка 17, 25, 27 переменные окружения 161, 164, 180, 198 перенос на другой дисковод 201 приглашение 10, 22, 34, 50, 162 сообщения об ошибках ввода- вывода 207 составные части 26 устройства логические 31, 40, 182 CON (консоль) 31, 40, 182 NUL (пустое устройство) 31 PRN (принтер) 31, 40, 182 N Norton Commander 49, 157, 169 выбор группы файлов 52 меню 52, 55 меню команд пользователя 59 панели 50 режимы работы 55, 58 файл dirinfo 59 файл NC.EXT 51, 58 файл NC.MNU 59, 160
234 Предметный указатель Р PostScript — язык описания страниц 20 R ROM см. ПЗУ 26 W WYSIWYG принцип 62 А Адаптер сетевой 21 Архивация файлов 121, 154, 173 PKUNZIP программа 121, 132 PKZIP программа 121 PKZTPFIX программа 137 архивный файл 121 восстановление при повреждении 137 оглавление 126, 135 проверка целостности 136 защита информации паролем 122, 129, 139 из всех подкаталогов 122, 128, 129, 138 извлечение файлов из архива 133 помещение файлов в архив 124 с помощью командных файлов 142, 143 Б Базовая система ввода-вывода 26 Буквы: прописные 16, 67, 88 строчные 16 В Винчестер см. Диск жесткий 9 Вирус компьютерный 144 ANTI4US программа 150 CRCLIST программа 146, 216 CRCTEST программа 146, 22Q виды заражаемых файлов 145 действия при заражении компью¬ тера вирусом 152 защита от него с помощью резидентных программ 29, 149, 157, 168 защита с помощью запрета записи на диск 151 программа, зараженная вирусом 144 программы для обнаружения и удаления вируса 148, 152 профилактика заражения 154 ранняя диагностика 146, 168, 216, 220 программы CRCLIST и CRCTEST 146, 148, 216, 220 резидентный 144, 145 Время текущее 34, 167, 201 г Графопостроитель 21 д Дата текущая 167, 183 формат отображения 38 Директория см. Каталог 31 Диск: гибкий (дискета) 12, 192 емкостью 0,7 Мбайт 13 емкостью 1,2 Мбайт 12 емкостью 1,4М 13 емкостью 360 Кбайт 12 защита от записи 13, 158 копирование дискет 185 размером 3,5 дюйма 13 размером 5,25 дюйма 12 сравнение дискет 183 жесткий (винчестер) 9, 13 емкость 13 защита от записи 158 обслуживание 171 командный файл 173 подготовка к выключению электропитания 42, 173 работа без жесткого диска 206 разбиение на логические диски 157, 158 размещение файлов 159 инициализация см. Форматирование 13 информация о диске 44, 50 метка диска 47 оптимизация размещения файлов 45 проверка на наличие дефектов 43 проверка файловой системы 44, 171, 177 режим проверки правильности записи 156, 202, 203 список каталогов и файлов на диске 201 устранение фрагментации 45 форматирование 13, 46, 189 электронный 26, 161, 205, 206
Предметный указатель 235 Дискета см. Диск гибкий 12 Дисковод 9 логическое имя 33 изменение 175 работа с одним дисководом для дискет 205 текущий 33, 34 смена текущего дисковода 36, 53 Дисплей см. Монитор 9, 13 Драйвер: ANSI.SYS 161, 163, 169 VDISK.SYS 161 клавиатуры 16, 29, 67, 78, 79, 165 принтера 19, 167 устройства 26, 145 Е ЕС1840 9 ЕС1841 9 И Издательская система 15, 62 PageMaker 62 ТеХ 63 Ventura Publisher 63 К Каталог 31 имя 32 корневой 32, 159 надкаталог 32, 33, 51 переименование 41, 52 подкаталог 32, 51 просмотр каталога 37, 50 родительский каталог см. Надкаталог 32 создание 39, 41, 52 сортировка 46 сравнение каталогов 57 текущий 25, 32, 33, 34 смена текущего каталога 36, 41, 53 удаление 39, 41, 52 указанный в команде path 25, 35, 115, 160, 162, 196 Клавиатура 15 драйвер клавиатуры 16, 29, 67, 78, 79, 165 переключение на другой алфавит 16, 67, 78, 88 переопределение значений клавиш 169 соответствие советских и импортных клавиатур 207 специальные клавиши 16 Клавиши: [Alt] 17 [Backspace] 17 [Caps Lock] 16 [Ctrl] 17 [Del] 16 [Enter] 16, 23, 34 [Escape] или [Esc] 17 [Fl] - [F12] 17 [Ins] 16 [Num Lock] 17 [Shift] 16 [ЛАТ] 16, 67, 78 [РУС] 16, 67, 78 комбинации клавиш 17 [Ctrl-Alt-Del] 17, 25 [Ctrl-Break] 25, 34, 37, 115, 117, 176 [Ctrl-C] 34, 37, 115, 117, 137 [Ctrl-S] 34, 37, 137 [Shift-PrtScr] 17, 193 типа [Alt-X] 17 типа [Ctrl-X] 17 управления курсором 17 функциональные 17 Кодировки символов 19, 20, 226 Командный файл 25, 35, 114 вывод сообщений на экран 117 выполнение 114 диалог с пользователем 119, 214 запуск 114, 115, 177, 180 комментарии 116 метки 118 параметры 116, 200 сдвиг номеров 200 переменная ERRORLEVEL 118, 119, 184, 186, 192, 214 перехода команды 118 приостановка выполнения 117 проверка условий 118 режим вывода команд на экран 116 Команды MS DOS 23 append 24 assign 24, 175, 192 attrib 24, 176 backup 24, 176 break 23, 176 call 115, 177 cd 23, 36 chdir cm. cd 23 chkdsk 24, 44, 153, 157, 171, 177 cis 23, 41 command 24, 115, 164, 177, 179, 199 copy 19, 23, 40, 156, 181 cttv 23, 180 date 23, 168, 183 debug 24
236 Предметный указатель del 23, 37 delete см. del 23 dir 23, 37, 46 diskcomp 24, 183 diskcopy 24, 176, 185, 205 echo 23, 116, .117 edlin 24 erase cm. del 23 exe2bin 24 exit 23, 180, 186 fastopen 24, 186 fc 24, 187 fdisk 24 find 24, 188 for 23, 189 format 24, 46, 157, 176, 189, 201 goto 23, 118 graftabl 24, 167, 193 graphics 24, 193 if 23, 118 join 24, 192 label 24, 47, 157 link 24 mcopy 193 md 23, 24, 39 mkdir cm. md 23, 24 mode 24, 194 more 24, 196 path 23, 25, 35, 115, 160, 162, 164, 196, 199 pause 23, 117 print 19, 24, 197 prompt 23, 162, 164, 199 rd 23, 39 recover 24 rem 23, 116 ren 23, 39 rename cm. ren 23 replace 24 restore 24 rmdir cm. rd 23 set 23, 164, 198 share 24, 199 shift 23, 116, 200 sort 24, 200 subst 24, 192 sys 24, 156, 157, 201 time 24, 168, 201 tree 25, 201 type 24, 36 ver 24, 202 verify 24, 156, 202 vol 24 volume cm. vol 24 xcopy 25, 156, 176, 202, 205 ввод в компьютер 34, 168 внешние 24, 26 внутренние 23, 26 выполнение 25, 35, 54 имена команд 35 параметры команд 35 поиск 25, 35 формат команд 35 Конфигурирование MS DOS 156 разбиение жесткого диска см. Диск жесткий 157 размещение файлов см. Диск жесткий 159. файл AUTOEXEC.BAT см. AUTOEXEC.BAT 161 файл CONFIG.SYS см. CONFIG.SYS 26, 160 Л ЛЕКСИКОН (редактор текстов): вид экрана 65 вызов 64 информационная строка 65 меню 66, 79 настройка размеров и цвета окон 76 получение помощи 65 установка на жесткий диск 79 шрифты символов 71 м Маршрут см. Путь 33 Математический сопроцессор 12 Микропроцессор 11 Intel-80286 11 Intel-80287 12 Intel-80386 И Intel-80387 12 Intel-8087 12 Intel-8088 11 Монитор 9, 13 CGA 14, 167, 193 EGA 14, 15, 167, 193 Hercules 14 MDA 14 VGA 14, 15 вывод файла на экран монитора 36 графический режим 13, 14, 167, 193 монохромный 13 очистка экрана 41 печать копии экрана 193 разрешающая способность 14 текстовый режим 13 установка режимов 195 цветной 13 Мышь 10, 20, 49
Предметный указатель 237 н Накопитель на дисках см. Дисковод 12, 13, 33 о Операционная система 21 п Пакетный командный файл см. Командный файл 25, 114 Память оперативная 11, 26, 29, 48 ПЗУ (постоянное запоминающее устройство) 26 Плоттер 21 Принтер 10, 17 24-точечный 18 9-точечный 18 вывод файла на принтер 40 лазерный 19 литерный 18 матричный 18 подключение к асинхронному порту 195 струйный 18 установка режимов работы 194 Программа anti4us см. Вирус компьютерный 150 ask 119, 214 crclist см. Вирус компьютерный 146 crctest см. Вирус компьютерный 146 delbak 45, 225 disk manager 158 dosedit 34, 168 ds 46 dt 43, 172, 179 fa 176 ff 43 graphcyr 193 hdpark 174 Id 172, 202 ncd 41, 46, 172 Norton Commander cm. Norton Commander 49 nu 43 park 11, 42, 173 pkunzip см. Архивация файлов 121 pkzip см. Архивация файлов 121 pkzipfix см. Архивация файлов 137 qu 42 sd 45, 172 setup для установки конфигурации 152, 155, 157 si 47 vtsr 48 where 43 wipefile 172 действия при ’’зависании” программ 25 для защиты от вируса см. Вирус компьютерный 29 оболочка 49, 157, 169 проверки оборудования 27 резидентная 28, 48, 149 Путь 33 поиска выполняемых программ 115, 160, 162, 196 Р Редактирование текстов: ввод текста 67, 88 выделение фрагмента текста 68, 90 выравнивание правого края текста 67, 88 заголовки страниц см. Колонтитулы 73, 102 загрузка документа 75, 84 изменение межстрочного интервала 91 изменение шрифта 69, 71, 90, 91 ключевые последовательности см. Макропоследовательности 105 колонтитулы 73, 102 контекстная замена 72, 95 контекстный поиск 72, 94 копирование фрагмента текста 69, 90 из одного документа в другой 76, 108 корректировка текста 68 курсор 66, 87 макропоследовательности 77, 105 начало нового абзаца 67, 88 нумерация сносок 100 страниц 73, 100 перемещение по тексту 66, 87 перенос слов 90 печать 74, 91, 98 разделение на страницы 73, 101, 102 режим вставки и режим замены 67, 88 сноски 103 сохранение документа 75, 85, 91 таблицы 77, 96, 98
238 Предметный указатель удаление: выделенного фрагмента 69, 90 символа 68, 89 строки 68, 89 уровни в строке 96 форматирование абзацев 70, 71, 89 формулы 96 центрирование строк 70, 89 Редактирование файлов 52 Редактор текстов 61 ChiWriter см. ChiWriter 62 edlin 24 Microsoft Word 62, 63 ЛЕКСИКОН см. ЛЕКСИКОН 62 Редактор текстов программ 61 с Символы: * и ? 36, 37, 39, 40, 52, 176, 181, 202 изображаемые в текстовом режиме монитора 13 кириллицы 14, 19, 226 кодировки 19, 20, 226 печатаемые на принтере 19 псевдографические 14 с кодами 128-255 166, 193, 226 шрифты 14, 19, 20, 71, 91, 92 Сканер 21 Стабилизатор напряжения 10 Стриммер 21 ф Файл 30 ASCII-файл 30 AUTOEXEC.BAT см. AUTOEXEC.BAT 28 COMMAND.COM см. MS DOS, командный процессор 23 CONFIG.SYS см. CONFIG.SYS 26 IBMBIO.COM qm. IO.SYS 26 IBMDOS.COM см. MSDOS.SYS 26 IO.SYS 26, 27, 145, 160, 201 MSDOS.SYS 26, 27, 145, 160, 201 NC.EXT см. Norton Commander 51 NC.MNU cm. Norton Commander 59 TREEINFO.NCD 41, 160 архивный см. Архивация файлов 121 атрибут 176 неархивирован 176, 203 системный 176 спрятанный 176 только для чтения 176 восстановление удаленного файла 42 время создания или модификации 37 вывод информации о файлах 37 вывод на экран 36, 196 двоичный 30 имя файла 30 запрещенное 31 полное 33 исполнимый (.СОМ или .EXE) 25, 35, 145, 146, 153 командный (типа .ВАТ) см. Командный файл 25 конкатенация 182 копирование 40, 52, 53, 181, 193 переименование 39, 52, 53 перемещение в другой каталог 52, 53 печать 74, 197 поиск на диске 54 поиск подстрок 188 поиск файла на диске 43 просмотр 52 путь к файлу 33 размер файла 37 расширение имени файла 30 редактирование 52 режим разделения доступа к файлам 199 сортировка 200 сравнение файлов 186 текстовый 25, 30 типа .ВАК 31, 45, 85, 171, 225 типа .ВАТ см. Командный файл 25, 114 типа .СОМ 25, 35, 145, 146, 153 типа .EXE 25, 35, 145, 146, 153 типа .LIB 145 типа .OBJ 145 удаление файлов 37, 52, 53 ш Шрифты символов 14, 19, 20, 71, 91, 92
Справочное издание Фигурнов Виктор Эвальдович IBM PC для пользователя Зав. редакцией И. Г. Дмитриева Редакторы: Л. Д. Григорьева, Т. А.Петрова, Л. А.Табакова Худож. редактор С. Л. Витте Корректоры Г. А. Башарина, Г.В.Хлопцева ИБ № 2757 Подписано в печать 8.02.90. А 08230. Формат 60X88‘/i6. Бум. кн.-журн. и.мп. Гарнитура „Школьная**. Печать офсетная. Усл. п. л. 14,7. Усл. кр.-отт. 14,82. Уч.-изд. л. 16,63. Тираж 200 000 экз. (2-й завод 100 001 - 200 000). Заказ 106. Цена 2 руб. Издательство ’’Финансы и статистика”, 101000, Москва, ул. Чернышевского, 7. СГ1 «Соваминко» Агентство «КомпьютерПресс» 113093, Москва, ул. Люсиновская, 53, строение 2 Оригинал-макет изготовлен В. Э. Фигурновым Отпечатано в типографии им. Котлякова издательства ’’Финансы и статистика” Государственного комитета СССР по печати. 195273, Ленинград, ул. Руставели, 13.
СОВМЕСТНОЕ СОВЕТСКО-ФРАНКО-ИТАЛЬЯНСКОЕ ПРЕДПРИЯТИЕ ’’ИНТЕРКВАДРО” предлагает всем, кто имеет персональные компьютеры IBM PC или совместимые с ними, приобрести КОМПЛЕКТ ДОКУМЕНТАЦИИ И ПРОГРАММ ’’РАБОТА ПОЛЬЗОВАТЕЛЯ С IBM PC” (на русском языке) Комплект документации и программ позволит: ♦ в кратчайшие сроки обучить работе с IBM PC даже тех, кто раньше ни разу не видел компьютера; ♦ быстро получить все необходимые сведения о нужных Вам программах и командах операционной системы; ♦ узнать об особенностях использования компьютера для работы с русскими буквами; ♦ создать оптимальную конфигурацию Вашего компьютера; ♦ поддерживать работоспособность Ваших компьютеров и избежать их заражения вирусом. Купив комплект, Вы получите простое и удобное руководство по работе с персональным компьютером и узнаете много того, о чем не написано в фирменной документации по MS DOS / Комплект содержит полные описания: ♦ всех команд MS DOS и средств конфигурирования системы; ♦ популярных редакторов текста ЛЕКСИКОН и ChiWriter; ♦ разновидностей компьютерных вирусов и программ для защиты от них. В состав комплекта входит дискета (5,25”, 360 Кбайт) с про¬ граммным обеспечением, включающим программы для раннего обна¬ ружения компьютерных вирусов, создания диалоговых командных файлов, полный комплект шрифтов для редактора ChiWriter и др. Вы не пожалеете, купив комплект документации и программ ’’Работа пользователя с IBM PC”: Его отсутствие обойдется Вам гораздо дороже! Объем документации, входящей в комплект, — более 17 авт.л. Цена 1 экз. комплекта для заявок, отправленных до 1 июля 1990 г., - 480 рублей (для вузов и НИИ системы АН СССР - 390 руб.), для заявок, отправленных после 1 июля 1990 г., — 590 руб. (для вузов и НИИ системы АН СССР — 480 руб.). Для приобретения комплекта следует направить гарантийное письмо по'адресу: 125130, Москва, 2-й Новоподмосковный пер., 4, СП ’’Интерквадро”, Отдел математических разработок. Тел. [095) 1509201, телекс (871)413560 KVINT SU, телетайп 207321 ВАИЛЕ, телефакс (095)9430059.
2 РУб.