Midnight Commander в действии

Вы используете AdBlock. Этот сайт существует за счёт доходов от рекламы. Мы будем благодарны если вы отключите AdBlock на страницах нашего сайта.

()

Есть множество свободных файловых менеджеров. Есть Nautilus в среде GNOME. Пользователи KDE имеют Konqueror и Krusader. Есть так же более мощный Dolphin, который будет менеджером по умолчанию в KDE4. Быстрый Thunar, который можно найти в легковесном XFCE. Все они имеют очень богатый функционал, и одну особенность, которая в критической ситуации может стать для них минусом - они, как правило, имеют сложные зависимости и требуют наличия запущенного X-сервера. Однако есть просто и лёгкое решение - MC!

Midnight Commander (Для краткости просто mc) самый популярный консольный файловый менеджер. Он имеет классический двухпанельный интерфейс, подобный интерфейсу знаменитого Norton Commander - файлового менеджера для DOS. Midnight Commander имеет следующие особенности:

  • Нативная поддержка архивов, .deb и .rpm-пакетов. Пользователь может перемещаться по ним как по каталогам и копировать файл из/в архив.
  • Возможность подключаться к серверам по протоколам FTP, SSH и SMB.
  • Возможность выделять несколько файлов и работать с группами файлов используя шаблоны.
  • Есть подсветка синтаксиса в mcedit - встроенном редакторе mc.
  • Возможность применять пользовательские команды в выделенным файлам.
  • ...и многое другое.

Заслуживает внимания и тот факт, что .deb-пакет mc имеет размер всего около двух мегабайт! К сожалению оригинальный вариант приложения не поддерживает UTF-8, но есть патчи, доступные например в дистрибутивах OpenSuSE, RedHat, Gentoo Linux. Следует так же отметить что mc был файловым менеджером по умолчанию в ранних версиях GNOME, но потом он стал полностью консольным и от него отказались.

Установка

Поскольку mc есть в составе практически любого дистрибутива Linux и даже имеет порт на BSD, то установить его можно просто используя штатный менеджер пакетов. Например в Debian/Ubuntu вам нужно выполнить следующую команду:

apt-get install mc

На системах Fedora/CentOS/Scientific Linux/Red Hat:

yum install mc

Версии для Windows и BeOS так существуют. Благодаря открытому коду, mc был портирован даже на AIX и HP-UX. Бинарная версия под Sun Solaris доступна со страницы Sun Freeware.

Запуск

Вы можете запустить mc просто введя в терминале команду mc. Сразу после запуска на левой панели будет оглавление каталога, из которого вы запустили mc, а на правой - оглавление домашнего каталога. Если передать mc в качестве параметра каталог - он будет открыт на левой панели. Например в результате запуска команды:

mc /usr/src

Вы получите запущенный mc, с оглавлением каталога /usr/src на левой панели. Кроме того в командной строке вы можете передать дополнительные параметры:

  • -b - использовать чёрно-белую палитру.
  • -c - цветная палитра.
  • -v <путь к файлу> - запустить встроенный просмотрщик на просмотр указанного файла.
  • -e <путь к файлу> - запустить встроенный редактор на редактирование указанного файла.

Вы так же можете запустить встроенный редактор как самостоятельную программу используя команду mcedit. Например так:

mcedit /etc/fstab

Основы mc

Практически всё управление сводится к небольшому количеству клавиш: клавиши правления курсором, PgUp, PgDown, <Tab> - чтобы переключаться между пунктами меню или элементами диалогов, пробел - для выбора текущего элемента и функциональный клавиши F1-F10 для доступа к самым основным функциям:

  • F1 - Меню помощи.
  • F2 - Пользовательское меню.
  • F3 - Просмотр.
  • F4 - Правка.
  • F5 - Копирование.
  • F6 - Перемещение.
  • F7 - Новый каталог.
  • F8 - Удаление.
  • F9 - Главное меню.
  • F10 - Выход.

Клавиатурные сокращения

В системе Windows самый популярный двухпанельный файловый менеджер - Total Commander. при почти одинаковом функционале с mc, у них заметно различаются горячие клавиши. Таблице ниже даёт частичное представление об этом:

Функция Midnight Commander Total Commander
Меню директорий CTRL+\ CTRL+D
Сравнение каталогов CTRL-X+D SHIFT+F2
Обновить CTRL+R F2
Спрятать панели CTRL+O SHIFT+ESC
Инвертировать выделение M+* NUM*
Поиск файла ALT+? ALT+F7
Быстрый просмотр CTRL-X+Q CTRL+Q
Права доступа CTRL-X+C недоступно
Владелец CTRL-X+O недоступно
Симлинк CTRL-X+S SHIFT+CTRL+F5

Последовательности вроде CTRL-X+D выполняются так: Сначала нажимаем сочетание CTRL+X, а потом клавишу D - как в редакторе Emacs. Сочетание ESC+(1-10) заменяет соответственно клавиши F1-F10. Это полезно на терминалах без поддержки функциональных клавиш.

Просмотр файлов

Midnight Commander, как и многие другие современные средства управления большим количеством файлов, позволяет просматривать файлы практически всех типов. MC одинаково хорошо позволяет просматривать архивы, файлы пакетов, документацию man и pdf. Вы можете просматривать даже iso-образы дисков без предварительного монтирования. Кроме того есть функция быстрого предпросмотра, вызываемая сочетанием CTRL-X+Q или через меню панелей.

Управлением группами файлов

Что выделить отдельный файл - установите на него курсор и нажмите клавишу Insert. чтобы выделить сразу несколько файлов по маске - выберите в меню «Файл» опцию «отметить группу» и введите регулярное выражение. Например *.odt означает все файлы с расширением .odt. Сочетание SHIFT-\ отменит выбор, а сочетание SHIFT+* инвертирует выделение (В данном случае выделит все файлы, кроме файлов с расширением .odt).

Вы можете копировать/перемещать/удалять выбранные файлы. Но это ещё не всё. Вы можете выполнить с выделенными файлами вообще любую команду. Для этого нажмите F2 (Пользовательское меню) и выберите пункт «Do something on the tagged files» (Клавиша @), после чего введите команду, которую вы хотите выполнить для выбранных файлов.

Вы так же можете задать фильтр для отображения файлов. Зайдите в меню правой или левой панели, выберите пункт «Фильтр» и задайте шаблон отображаемых файлов. Например шаблон *.pdf заставит панель показывать только файлы с расширением .pdf, каталоги и симлинки.

Поиск файлов

MC предлагает достаточно широкие возможности для поиска файлов. Используйте опцию «Поиск файла» из меню «Файл». Конечно mc позволяет использовать регулярные выражения для поиска. Найденные файлы будут показаны в отдельном окне. Кнопка «Переход» позволяет перейти в каталог с найденным файлом. Кнопка «Повтор» снова откроет окно с параметрами поиска, где вы можете указать другие критерии. Кнопка «Панелизация» отобразит все найденные файлы в текущей панели mc.

Соединение с сервером

Подключится к серверу можно следующим способом. Выбрать в меню правой или левой панели пункт с требуемым типом соединения, ввести адрес, логин и пароль. Имя и пароль можете задать в одном из следующих форматов: user_name:password@server_address или user_name@server_address. Если выбран второй вариант - в момент подключения будет запрошен пароль. Если вы выбираете «Shell-соединение», то будет использован FISH-протокол, созданный специально для mc. В KDE он реализован в kio-slave как fish://. Этот протокол требует ssh-демона, запущенного на стороне сервера. К ftp так же можно быстро подключится используя команду:

cd /#ftp:user_name:password@server_address/directory

Для анонимного соединения:

cd /#ftp:server_address/directory

Подобным образом можно соединиться и по FISH-протоколу:

cd /#sh:user@server_address/directory

Поддержка RPM и DEB-пакетов.

Как было сказано выше - mc поддерживает две самые популярные системы управления пакетами - rpm и deb. Если вы хотите увидеть полный список установленных в системе rpm-пакетов, введите следующую команду:

cd #rpms

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

cd #apt

и:

cd #dpkg

В этом случае вы так же увидите список установленных пакетов. Разница в том что первая команда используется на RedHat-подобных системах. А вторые две - на Debian-подобных.

Клавиша F10 в терминале GNOME

Есть известный конфликт клавиш в терминале GNOME. Он использует клавишу F10 для вызова меню, и в итоге mc не получает нажатия это клавиши. Проблему можно решить следующей командой:

gconf -set /apps/gnome-terminal/global/use_menu_accelerators -type boot false

Этот метод найден в польской OpenSuSE Wiki.

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

Источник

Ключевые слова: mc, midnight, commander.

Подписаться на обновления: RSS-лента Канал в TamTam Telegram канал

Комментарии:

alexsx06 2007-08-28 17:35:52 (#)

Да без MC,в консоли как без рук,а он создает удобствоа причем нужные и хорошие.

sungreen 2007-08-28 18:18:45 (#)

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

Alex 2007-08-28 22:55:47 (#)

А мне под Х Krusader больше нравится

Killy 2007-08-29 00:11:43 (#)

mc - это зверь, ты просто поверь.
ну а настроить тебе поможет
man mc.

MooSE 2007-08-29 05:57:57 (#)

У меня всё просто - в консоли (на серверах например) - mc. В иксах - Krusader. Ибо кеды труъ :)

sungreen 2007-08-29 06:49:58 (#)

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

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

Некоторое время искал замену mc. Попробовал практически все, что есть в репозитарии. Но так ничего на замену не нашел.

MooSE 2007-08-29 09:27:31 (#)

Да, сам понять не могу, как я жил без МС! А в консоли - просто спасение. Автор, пасиба за статью.

MooSE 2007-08-29 10:33:16 (#)

А в консоли есть ещё убогий Deco. Вот это действительно для настоящих минималистов. Ради хумора на один из серверов поставил - сначала проржаться не мог, а потом освоился и даже нравитяс. Хотя он реально убог:)

sungreen 2007-08-30 06:56:28 (#)

... можно добавить некоторые особенности установки mc в gentoo с локалью utf8, а именно USE флаги при сборке mc, конвертация справки и man-страниц ...

( http://ru.gentoo-wiki.com/HOWTO_ru_RU.utf8_Gentoo_way#Midnight_Commander )
Библиотека slang должна быть собрана с флагом unicode
USE="unicode" emerge slang
USE="unicode slang -ncurses" emerge mc

( http://www.gentoo.ru/node/5806 )
cd /usr/share/mc && iconv -fKOI8-R -tUTF-8 mc.hlp.ru > mc.hlp.ru2 && mv mc.hlp.ru{2,}

( http://ru.gentoo-wiki.com/HOWTO_ru_RU.utf8_Gentoo_way#man )
emerge app-i18n/enca
в /etc/man.conf ...
# NROFF /usr/bin/nroff -Tascii -c -mandoc
NROFF /usr/bin/enconv -L ru -x KOI8-R | /usr/bin/nroff -mandoc -Tlatin1 -c | /usr/bin/enconv -L ru -x UTF8

...

MooSE 2007-08-30 07:53:25 (#)

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

Это поймут те, кто пытался с юникодной локалью в редакторе и/или просмотрщике жать Ctrl+T.

sungreen 2007-08-30 09:20:37 (#)

... проблемы с юникод стала одной из причин по которой перестали включать mc по умолчанию в дистрибутивы (где то начиная с 8,9 rh,suse и т.д) ...

MooSE 2007-08-30 09:24:12 (#)

На самом деле нужно починить перекодировку в редакторе. Тогда потом всё будет нормально:)

olle 2007-10-06 11:05:42 (#)

MC в linux, как FAR в windows.. выбор однозначен! :)

Anonymous 2010-03-13 15:17:26 (#)

спасибо!

0mm 2010-10-01 14:28:27 (#)

Я так и не смог привыкнуть к Крусадеру. Как и прежде, использую только MC...
Новый комментарий

Жирный текстКурсивный текстПодчёркнутый текстЗачёркнутый текстПрограммный кодСсылкаИзображение




© 2006-2025 Вадим Калинников aka MooSE
Политика конфиденциальности