Опубликован: 27.07.2006 | Уровень: для всех | Доступ: платный
Лекция 4:

Обработка документов

Текстовый редактор Emacs

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

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

Эхо-область используется также для отображения минибуфера: окна, которое применяется для считывания аргументов для команд, например, имени файла для редактирования. Когда используется минибуфер, эхо-область начинается со строки подсказки, которая обычно кончается двоеточием; кроме того, в этой строке появляется курсор, так как она становится выбранным окном. Вы всегда можете выйти из минибуфера, набрав C-g.

Рекомендуемый способ использования Emacs - запускать его только один раз сразу после входа в систему. При необходимости одновременной работы с несколькими файлами или различными частями одного и того же документа следует командой C-x 5 2 или при помощи пункта Make New Frame меню Files создать новое окно (так называемый фрейм ). Допускается разделение одного окна на несколько рабочих областей (в терминологии Emacs - окон), хотя это менее удобно, чем использование фреймов. Команда C-x 2 разделит окно на два по вертикали, команда C-x 3 - на два по горизонтали, а команда C-x 1 оставит только одно окно.

Emacs сохраняет текст каждого файла в объекте, называемом буфер (buffer). При первом обращении к файлу Emacs создает новый буфер. Для того чтобы увидеть список буферов, созданных в текущем сеансе работы, наберите C-x C-b.

Для завершения работы редактора Emacs служит команда C-x C-c. Если в этот момент были буфера, содержимое которых не было сохранено на диск, то вам будет предложено сохранить их.

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

При запуске редактора командой "emacs .&" на экране появляется окно Emacs с информацией о содержимом текущего каталога (символ & в конце команды обеспечивает запуск приложения в фоновом режиме). В этом случае он играет роль файлового менеджера.

Перемещение по каталогам

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

Для обращения к требуемому файлу или каталогу служит команда C-x C-f. В окне минибуфера появится строка Find File, в которой указан путь до текущей директории. Редактируя ее, укажите путь до нужного вам каталога в соответствии с синтаксисом операционной системы Linux. После ввода имени директории или файла следует нажать клавишу Enter. Если указано имя файла, то будет открыт или создан соответствующий файл.

Пример

Для того чтобы переместиться на уровень вверх нужно ввести фрагмент ../, если вы хотите подняться на два и более уровней вверх, соответственно укажите два или более раз ../ без пробелов и других символов. Если вы хотите зайти в какую-то поддиректорию текущей директории, то нужно указать имя требуемой директории. Для перемещения в домашнюю директорию пользователя используется символ ~, в корневую директорию - /. Введенный вами фрагмент может выглядеть следующим образом: ../../Work/text, что означает перемещение на два уровня вверх, далее в директорию Work и поддиректорию text.

Создание директории

Для создания директории служит команда +. В минибуфере появится сообщение Create directory, после которого нужно ввести имя создаваемой директории.

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

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

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

Переименование (перемещение) файлов и каталогов

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

Изменение прав доступа к файлам или директориям

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

Символьное обозначение rwx rw- r-x r-- -wx -w- --x ---
2-ное представление 111 110 10 100 011 010 00 000
8-ное представление 7 6 5 4 3 2 1 0

В приведенной выше таблице буквы означают соответственно r - read (чтение), w - write (запись), x - execute (выполнение для файлов и возможность входа для каталогов), причем наличие соответствующего права кодируется 1, а отсутствие - 0.

Удаление файлов или каталогов

Для удаления группы файлов следует сначала отметить их, как удаляемые, нажатием клавиши d (в крайней левой позиции при этом появляется метка D). После отметки всех файлов нажать клавишу x и на экране появится список удаляемых файлов, а в окне минибуфера запрос подтверждения удаления. Нажмите y в случае согласия или n для отмены операции. Удаление одного файла или группы файлов, отмеченных нажатием на клавишу m, можно выполнить и с помощью команды D. Удаление каталогов происходит точно так же, как и удаление файлов, но удаляемые директории должны быть пустыми.

Отметим некоторые другие полезные команды редактора.

Команда Назначение
v Просмотр содержимого файла
e Редактирование содержимого файла
u Снятие пометки файла
g Обновление содержимого директории
Дмитрий Фаттахов
Дмитрий Фаттахов
Виктория Бельгесова
Виктория Бельгесова

Добрый день. Как получить удостоверение о прохождении данного курса?

Алексей Лещев
Алексей Лещев
Россия, Алтгту