Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Лабораторная работа № 4. Командная оболочка Midnight Commander
1. Цель работы Целью работы является изучение основных возможностей и приобретение практических навыков работы с файловым процессором Midnight Commander, предоставляющей экранный интерфейс для POXIX – совместимых ОС. 2. Методические указания 2.1 Общие сведения Файловый процессор – это программа, предназначенная для выполнения различных операций над файлами и каталогами (напомним, что в ОС Linux каталоги являются одним из типов файлов). Стандартными операциями над файлами являются: просмотр, копирование, переименование, перемещение, удаление, изменение атрибутов. Операции создания и редактирования файлов в большинстве случаев проводится с помощью соответствующих инструментальных средств (текстовых и графических редакторов, табличных процессоров и т.д.) и только для текстовых файлов эти операции можно выполнить средствами ОС (команды touch, cat, vi ). В настоящее время имеется достаточно много различных файловых процессоров, которые с точки зрения используемого интерфейса можно разделить на две группы. Программы первой группы основаны на использовании текстового интерфейса, предложенного П. Нортоном (к ним относятся Norton Commander, Volkov Commander, WinCommander, FAR и др.), в основу программ второй группы положен графический интерфейс с древовидным отображением файловой системы, например Проводник Windows. Основным файловым процессором в POSIX-совместимых ОСявляется Midnight Commander (mc), реализующий классический двухоконный текстовый интерфейс по типу Norton Commander. Управление программой осуществляется с помощью клавиатуры или мыши. Клавиатурные команды вводятся нажатием одной или нескольких клавиш, в последнем случае нажатия могут быть одновременными или последовательными. Одновременные нажатия будем обозначать, как «клавиша1 - клавиша2», последовательные - «клавиша1 клавиша2». Например, обозначение Ctrl-x i говорит о том, что надо нажать одновременно клавиши “Ctrl” и ”x”, а затем клавишу “i” 2.2 Окна MC Обычно MC высвечивает на экране два окна, в которых отображаются два каталога системы. Одно из этих окон (его имя выделено) является текущим, а второе используется при выполнении операций копирования или перемещения файлов, а также для вывода информации о текущем окне (команда Ctrl-x i ). Для быстрого перехода в соседнее окно служит команда Tab, а для смены местами окон на экране – Ctrl-u. Над панелями расположена строка меню, к которому можно перейти нажатием клавиши F9. Самая нижняя строка представляет собой ряд экранных кнопок, каждая из которых связана с одной из функциональных клавиш F1 - F10. Вторая снизу строка на экране (на черном фоне) - это командная строка, где можно ввести и выполнить любую команду ОС. Выше нее (но под панелями) может отображаться поле " полезных советов" (tips), которое можно убрать в настройках программы. Каждая панель содержит заголовок, список файлов и строку мини-статуса (последняя может быть отключена в настройках программы). В заголовке указан полный путь к каталогу, содержимое которого отображается в панели, а также три экранных кнопки - " < ", " v" и " > ", которые используются для управления программой с помощью мыши. В строке " мини-статуса" отображаются некоторые данные о файле или каталоге, на который в данный момент установлен указатель программы (например, размер файла и права доступа к нему). MC различает обычные файлы, каталоги и специальные файлы. Тип каждого файла указывается в окне символом слева от его имени, как показано в таблице 10. Имеются следующие типы файлов: Таблица 10
2.3 Главное меню MC При нажатии F9 происходит переход в режим главного меню. Для выполнения выберите нужную команду и нажмите ENTER; многие команды дублируются комбинациями «горячих» клавиш, выводимых в меню справа от соответствующей команды. Контекстную справку по любому пункту меню можно получить нажатием клавиши F1. 2.3.1 Настройка окон Разделы меню Left (Левая) и Right (Правая) предназначены для изменения состояния левого и правого окон соответственно. Изменение формата представления списка файлов в окне проводится через пункт Listing Mode (Формат списка) соответствующего окна. Возможны несколько вариантов представления списка: Full (Стандартный), Brief (Укороченный), Long (Расширенный) и User defined (Определяемый пользователем). В " стандартном" формате отображаются имя файла, его размер и время последней модификации. В " укороченном" формате отображаются только имена файлов, за счет чего на панели умещаются две колонки (и видно вдвое больше имен). В " расширенном" формате содержимое каталога представляется так, как это делает команда " ls -l" и окно занимает весь экран. Если будет выбран формат, определяемый пользователем, Вы можете самостоятельно задать структуру отображаемой информации. Порядок сортировки задается путем выбора в меню пункта Sort Order (Порядок сортировки). При этом появляется диалоговое окно, в котором надо указать желаемый порядок сортировки. По умолчанию подкаталоги отображаются в начале списка, но это можно изменить, поставив отметку возле опции Mix all files (Смешивать файлы и каталоги) пункта Panel Options (Настройки панели) меню Options (Настройки). Можно выводить в окно не все файлы данного каталога, а только соответствующие определенному шаблону. Пункт меню Filter (Фильтр) позволяет задать шаблон, которому должны соответствовать имена файлов, отображаемых в панели. Имена подкаталогов и ссылки на подкаталоги отображаются всегда, независимо от шаблона. Шаблон задается по обычным правилам, по которым формируются имена файлов в UNIX: ‘? ’ одиночный произвольный символ, ‘*’ - произвольное число любых символов, [символы] - любой из этих символов, ‘^’ в первой позиции обозначает " все файлы, не совпадающие с шаблоном". Например, шаблон " ^*.[bo]" означает " не показывать объектные и 'bak' файлы". В меню левого и правого окон имеется команда Rescan (горячие клавиши Ctrl-r ), которая обновляет список файлов, отображаемый в окне. Это бывает полезно в тех случаях, когда другие процессы создают или удаляют файлы. В режиме Info (Информация), показанном на рис.2, в окно выводится информация о подсвеченном в соседнем окне файле и о текущей файловой системе (тип, свободное пространство и число свободных inode). Режим Tree (Дерево) используется для отображения полного дерева каталогов в виде иерархической структуры, показанной на рис. 3. Режим Quick View (Быстрый просмотр) удобно применять для отображения содержимого файла, подсвеченного в соседнем окне. На рис. 4 приведен вид экрана при быстром просмотре файла /etc/fstab. Для вывода в панель результатов быстрого просмотра используется встроенная программа просмотра файлов, поэтому если переключиться клавишей < Tab> в окно просмотра, можно использовать все команды управления просмотром. Режим Encoding (Кодирование) применяется для оперативного изменения кодировки символов в текущем окне. Режимы FTP link, Shell link, SFTP link и SMB link используются для отображения списка каталогов, расположенных на удаленных компьютерах. В остальном формат вывода информации аналогичен форматам, используемым для отображения локальных каталогов.
Рис. 2
Рис. 3 Рис. 4 2.4.2 Выполнение операций с файлами Программа MC, как и любой файловый процессор, может выполнять операции с одиночным файлом и с группой файлов. Кроме выполнения стандартных операций возможно выполнение ряда дополнительных действий: редактирование текстовых файлов, подключение к удаленному компьютеру, работа с архивными файлами и т.д. Методика выполнения операций у всех файловых процессоров одинакова: · выбрать объект (файл или группу файлов); · указать операцию с помощью клавиатуры или мыши; · при необходимости указать дополнительные параметры. Выбор одиночного файла проводится установкой указателя MC на имя соответствующего файла. Создание группы файлов возможно двумя способами: установкой указателя MC на имя файла и нажатием клавиши INSERT или комбинации клавиш Ctrl-T; нажатием клавиш ‘+’ и ‘-‘ с последующим формированием соответствующего шаблона с использованием метасимволов ‘*’ и ‘? ’. Операция может задаваться следующими способами: использованием функциональных клавиш F1 – F10, выбором команды из главного меню, вызываемого нажатием клавиши F9, или использованием «горячих» клавиш. В главном меню MC «горячая» клавиша “C” соответствует клавише CTRL, а “M” – клавише ALT. Меню File содержит команды, приведенные в таблице 11. Таблица 11
Меню Command главного меню (см. таблицу 12) позволяет выполнить еще ряд операций по управлению файловой системой, а также выполнить некоторые команды, изменяющие вид окон MC и отображаемую в них информацию. Таблица 12
Команды ОС вводятся в командную строку и завершаются нажатием клавиши ENTER. Для упрощения ввода имен файлов, используемых в качестве аргументов команды, можно применить ускоренный ввод в соответствии с таблицей 13. Таблица 13
2.4.3 Настройка параметров MC Для настройки параметров MC (опций) предназначено меню Options в главном меню программы. Обратите внимание: после изменения параметров не забывайте сохранить текущие настройки! Пункт Configuration (Конфигурация) задает основные параметры MC. При выборе этого пункта меню появляется диалоговое окно, показанное на рис. 5. Параметры конфигурации, задаваемые в этом окне, делятся на три основные группы: File operations (Операции с файлом) Pause after run (Пауза после исполнения) и Other options (Прочие настройки). Параметры первой группы задают особенности выполнения операций над файлами - вывод окна, отображающего ход выполнения операции, вывод суммарного количества файлов, участвующих в операции, и их размера и т.д. Параметры второй группы задают реакцию MC на выполнение команд ОС. После выполнения команды MC может обеспечить паузу, чтобы Вы могли просмотреть и изучить ее вывод. Возможны три варианта установки этой опции:
Рис. 5 · никогда - это значит, что Вы не хотите видеть вывод команды. На консоли Linux можно просмотреть этот вывод, нажав клавиши Ctrl-o; · на " тупых" терминалах - пауза будет создаваться на терминалах, которые не способны обеспечить показ вывода последней из выполнявшихся команд (это любые терминалы, отличные от xterm или Linux-консоли). · всегда - программа обеспечит паузу после выполнения любой команды. Третья группа параметров определяет необходимость использования встроенных программ просмотра и редактирования текстовых файлов, автоматическое сохранение параметров при выходе из MC и т.д. Use internal edit (Использовать встроенный редактор). Если эта опция включена, то для редактирования файлов вызывается встроенный редактор. Если опция выключена, то будет использоваться редактор, указанный в переменной окружения EDITOR. Если такой редактор не задан, будет вызываться vi. Use internal view (Использовать встроенную программу просмотра). Если эта опция включена, то для просмотра файлов вызывается встроенная программа просмотра. Если опция выключена, вызывается программа, указанная в переменной окружения PAGER. Если такая программа не задана, используется команда view. Auto save setup (Автосохранение настроек). Если эта опция включена, то при выходе из программы MC значения всех параметров сохраняются в файле ~/.mc/ini. Auto menus (Автоматические меню). Если эта опция включена, пользовательское меню будет автоматически вызываться на экран при запуске MC. Это бывает полезно, если на компьютере работают пользователи, которые должны выполнять только стандартные операции. Пункт Layout (Внешний вид) задает внешний вид экрана MC через диалоговое окно, показанное на рис. 6. Вы можете вывести на экран или отменить вывод строки главного меню, командной строки, строки подсказок, мини-статуса, строки с подсказкой по функциональным клавишам. На Linux -консоли можно задать число строк, которые будут оставлены для отображения вывода команды. Можно также указать, должны ли панели располагаться горизонтально или вертикально, изменить размеры панелей. Рис. 6 Пункт Panel Options (Параметры панели) задает параметры панели через диалоговое окно, показанное на рис. 7. Здесь можно включить отображение скрытых файлов и файлов резервных копий (.bak); указать способ вывода размера файлов (в соответствии с международной системой единиц СИ, где префиксы «кило» и «мега» базируются на значении 1000, или двоичной системой, где базирование проводится на значении 1024); указать необходимость вывода типа файлов и прав доступа к ним и т.д. Рис. 7 Пункт Confirmation (Подтверждения) дает возможность включить запросы на подтверждение выполнения операций удаления и перезаписи файлов, а также запуска программ. Пункт Learn keys (Распознавание клавиш) вызывает диалоговое окно, в котором можно протестировать работу некоторых клавиш (F1-F20, Home, End), которые работают не на всех типах терминалов. Пункт Virtual FS (Виртуальные ФС) вызывает диалоговое окно, в котором можно задать значения некоторых параметров, связанных с использованием виртуальных файловых систем. Пункт Save setup (Сохранить настройки) обеспечивает сохранение выбранных значений параметров в файле ~/.mc/ini 2.5 Пользовательские меню Меню пользователя - это меню, вызываемое при нажатии клавиши F2 и состоящее из команд, определённых пользователем. Меню создается через главное меню MC command/edit menu file. Возможны два варианта меню: главное и локальное. Главное меню пользователя хранится в файле ~/.config/mc/menu и действует во всех каталогах файловой системы. Локальное меню хранится в файле ~/.mc.menu и действует только в том каталоге, где находится этот файл. Кроме пользовательских меню MC имеет собственное системное меню, которое находится в файле /etc/mc/mc.menu. Это меню работает только тогда, когда не определено главное меню пользователя и в каталоге отсутствует локальное меню. Если в каталоге есть локальное меню, то главное меню в этом каталоге не работает. Формат файла меню достаточно прост: строки, которые не начинаются с пробела или табуляции, являются записями меню (для того, чтобы у записи была горячая клавиша, нужно чтобы строка начиналась с буквы), а все строки, начинающиеся с пробела или табуляции, являются командами, которые выполняются при выборе записи. В меню можно проводить опрос пользователя с использованием переменных следующим образом: pname=%{Введите имя файла для копирования}; cp $pname ~/practice При выборе записи, все строки, принадлежащие этой записи, копируются в файл во временном каталоге (обычно это /usr/tmp) а затем этот файл выполняется. Это позволяет использовать стандартные конструкции, состоящие из команд ОС. Перед выполнением команд MC производит несложные макроподстановки в соответствии с таблицей 14. Таблица 14
Пример файла mc.menu: A Сделать дамп текущего файла od -c %f B Редактирование сообщения об ошибке и посылка его root'у vi /tmp/mail.$$ mail -s " Midnight Commander bug" root < /tmp/mail.$$ M Просмотр почты emacs -f rmail H Вызвать гипертекстовый информационный вьюер info 2.6 Установка ассоциаций Установка ассоциаций дает возможность связать файлы, содержащие определенные виды документов, с их родительскими программами. Для пользователя ассоциация состоит в том, что при нажатии клавиши ENTER в тот момент, когда подсветка указывает на имя неисполняемого файла, запускается программа, с помощью которой этот файл должен быть обработан. Способ обработки определяется пользователем и зависит от типа файла: для текстовых файлов это может быть вызов текстового редактора, для сжатых файлов – распаковка, для звуковых файлов – прослушивание и т.д. Ассоциации хранятся в файле расширений ~/.config/mc/mc.ext, представляющем собой набор разделов, каждый из которых содержит одну строку с указанием типа файла и одну или несколько строк с командами. Тип файла указывается с помощью ключей, имеющих вид: ключ/выражение. Число ключей достаточно большое, наиболее часто используются следующие ключи shell/тип файла (например, shell/.pdf) и regex/регулярное_выражение (например, regex/\.[Pp][Dd][Ff]). Команды определяют действия, выполняемые при нажатии определенных клавиш, например нажатие ENTER определяется командой Open, F3 – командой View и т.д. Если нескольких разделов должны иметь одинаковый набор команд, то можно команды разместить в одном разделе, а в остальных разделах сделать ссылку с помощью ключа Include=имя_общего_раздела. Если в файле найдется раздел, задающий процедуры обработки файлов с данным расширением, то обработка файла производится в соответствии с заданными в этом разделе командами. Перед обработкой выполняются макроподстановки (см. табл. 5). 2.7 Специальные файлы MC В таблице 15 приведены сведения о специальных файлах, используемых программой MC. Таблица 15
3. Порядок выполнения работы 1. Изучите структуру экрана после запуска программы MC 2. Откройте дополнительный сеанс, получите на этом экране информацию о mc ( man mc ). 3. Выполните простейшие операции, используя управляющие клавиши для программы MC (активизация окна, перемещение курсора в окне, выбор группы файлов, отказ от выбора, получение информации об объеме файлового пространства, занимаемого выбранной группой файлов и т.п.), результаты занесите в отчет. 4. Выполните основные подкоманды для левого или правого окна (степень подробности информации о файлах, получение информации о файле, быстрый просмотр и т.д.). 5. С помощью встроенного редактора в домашнем каталоге создать текстовый файл, в который занести информацию о студентах Вашей группы ( каждая запись содержит фамилию, имя и средний балл за последнюю сессию). 6. С помощью подменю «Файл»: - создайте каталог STUD; - выполните с созданным файлом а) копирование в каталог STUD, б) переименование в stud_fail, в) перемещение переименованного файла в каталог STUD; г) дайте право на редактирование файла всем пользователям ОС Linux; г) удаление; - выполните просмотр и редактирование текстовых файлов в каталоге STUD; - выполните копирование в домашний каталог системных файлов MC ( /etc/mc/mc.menu и /etc/mc/mc.ext ). 7. С помощью подменю «Команда» выполните: - поиск в файловой системе файла помощи MC; - выбор и повторение одной из предыдущих команд; - выход в домашний каталог; - анализ файла меню и файла расширений. 8. С помощью подменю «Настройки» освойте операции, определяющие структуру экрана MC. 9. Выполните анализ вашего домашнего каталога. Удалите все “лишние” файлы и каталоги. Определите объем памяти, занимаемый вашим домашним каталогом до и после “чистки”. 10. Изучите структуру файлов системного меню и расширений и создайте свое меню пользователя и реакцию на нажатие ENTER в соответствии с таблицей 16. Таблица 16
Замечания: · при подсчете числа файловых систем поиск делать по шаблонам ‘ext’, ‘xfs’ и ‘swap’; · при подсчете числа строк в системных файлах учитывать только полезные строки (комментарий не считать! ); · при подсчете числа файлов в домашнем каталоге с учетом подкаталогов можно применить команду find с опцией -type · информацию по управлению системной подсказкой можно найти по адресу http: //gnu.su/news.php? extend.151; · для упаковки и распаковки файлов использовать утилиты gzip и gunzip;
11. Сохраните окружения основного и дополнительного сеансов (см. п.2) в отдельные файлы и сравните их между собой с помощью команды diff. Результаты сравнения занесите в отчет и проведите анализ. 4. Контрольные вопросы 1. Назовите и дайте характеристику режимам работы программы MC. 2. Опишите выполнение команд ОС Linux из MC. 3. Какие типы файлов различает MC? Их обозначение и характеристика. 4. Назовите команды для подготовки групповой операции. 5. Дайте характеристику командам MC, изменяющим состояние левого и правого окон соответственно. 6. Приведите характеристику командам MC для раздела Файл. 7. Опишите команды MC для раздела меню Команда. 8. Опишите команды MC для раздела меню Настройки. 9. Назовите и дайте характеристику встроенным командам MC. 10. Назовите и дайте характеристику командам встроенного редактора MC. 11. Дайте характеристику средствам MC, которые позволяют создавать меню пользователя. 12. Дайте характеристику средствам MC, которые позволяют выполнять действия, определяемые пользователем над текущим регулярным файлом. 13. Назовите и дайте характеристику файлам, которые необходимы для реализации всех возможностей MC. 14. Можно ли создать несколько пользовательских меню? Популярное:
|
Последнее изменение этой страницы: 2017-03-08; Просмотров: 1838; Нарушение авторского права страницы