Midnight Commander Konsolowy Menadzer Plikow

Istnieje wiele wolnych (od wolności) menedżerów plików. Ze środowiska GNOME i biblioteki GTK wywodzi się Nautilus, z KDE związane są: Konqueror, Krusader oraz coraz bardziej użyteczny Dolphin, który ma stać się domyślnym menedżerem plików w nadchodzącym KDE 4, a wraz z lekkim środowiskiem XFCE 4 dostarczany jest szybki menedżer Thunar. Wszystkie te programy oferują bogactwo funkcji i możliwości (może poza okrojonym Nautilusem) oraz mają pewną wspólną cechę, która w niektórych przypadkach może być rozpatrywana jako wada — mają one z reguły bardzo rozbudowane zależności, wymagają bibliotek związanych z danym środowiskiem, oraz (co jest oczywiste) serwera X-Window. Oczywiście zwolennicy konsoli, użytkownicy poszukujący lekkich rozwiązań nie są pozostawieni samym sobie.
Najpopularniejszym konsolowym menadżerem plików jest Midnight Commander (w skrócie mc). Program ten inspirowany jest klasycznym, znanym z dosowego Norton Commandera, dwupanelowym interfejsem. Midnight Commander ma wiele funkcji:

  • przezroczysta obsługa spakowanych plików oraz pakietów deb i rpm tzn. pliki te obsługiwane są jak katalogi, do których użytkownik może wchodzić i z których może kopiować pliki,
  • możliwość łączenia się z serwerami ssh, ftp i smb,
  • możliwość zaznaczenia i pracy na grupie plików z wykorzystaniem znaków globalnych,
  • wbudowany edytor tekstu, mcedit z podświetlaniem składni,
  • możliwość wykonywania poleceń użytkownika na wybranym pliku/grupie plików.

I wiele innych, przy czym pakiet deb z tym programem zajmuje jedynie około 2 MB!
Niestety domyślnie MC nie obsługuje kodowania utf-8, dostępne są jedynie łatki dla systemów openSUSE i Red Hat. Jako ciekawostkę można podać, że MC był domyślnym menedżerem plików w początkowych wersjach GNOME, ale z czasem zarzucono obsługę trybu graficznego.

Instalacja

Ponieważ mc dostępny jest w każdej znanej mi dystrybucji Linuksa oraz jako port dla systemów z rodziny BSD, jego instalacja jest banalna i sprowadza się do wykorzystania swojego ulubionego programu do zarządzania pakietami. W systemach Debian/Ubuntu wystarczy wydać polecenie:
apt-get install mc
W systemach Fedora/CentOS:
yum install mc
Dostępna jest również wersja dla systemu Windows i BeOS. Dzięki otwartemu kodowi, program przeniesiono również na systemy AIX i HP-UX. Wersję binarną dla systemów Solaris można pobrać np. ze strony Sun Freeware.

Uruchomienie

Menedżer uruchamiamy w terminalu poleceniem mc. Po uruchomieniu programu, w lewym panelu będzie dostępny katalog w którym uruchomiliśmy mc, w prawym nasz katalog domowy. Uruchamiając program ze ścieżką do katalogu jako parametrem, otrzymamy ten katalog w lewym panelu czyli polecenie mc /usr/src otworzy nam mc w katalogu src.
Program posiada też kilka innych parametrów startowych:

  • -b powoduje uruchomienie mc w trybie czarno-białym,
  • -c wymusza użycie kolorów,
  • -v <ścieżka do pliku> uruchamia podgląd pliku,
  • -e <ścieżka do pliku> uruchamia edytor tekstu.

Możliwe jest też uruchomienie samego edytora tekstu za pomocą polecenia mcedit z ewentualną ścieżką do pliku, który chcemy edytować np. mcedit /etc/fstab.

Podstawy pracy z mc

Do poruszania się służą klawisze strzałek: w górę i w dół, do poruszania się w górę i w dół o jeden ekran służą klawisze PageDown i PageUp, tabulatorem przechodzimy pomiędzy panelami jak i pomiędzy poszczególnymi opcjami w menu, spacja powoduje zaznaczenie danej opcji. Pod klawiszami F1-F10 zdefiniowane są najważniejsze funkcje:

  • F1 — menu pomocy,
  • F2 — menu użytkownika,
  • F3 — podgląd pliku,
  • F4 — edycja pliku,
  • F5 — kopiowanie pliku,
  • F6 — przeniesienie lub zmiana nazwy pliku,
  • F7 — utworzenie katalogu,
  • F8 — usunięcie pliku/katalogu,
  • F9 — przeniesienie kursora do górnego menu,
  • F10 — wyjście z programu.

Skróty klawiaturowe

W świecie systemów Windows najpopularniejszym dwupanelowym menadżerem plików jest Total Commander, pomimo identycznej filozofii pracy, posiada on inne skróty klawiaturowe. Poniższa tabela przedstawia porównanie skrótów.

funkcja Midnight Commander Total Commander
Otwórz menu katalogów CTRL + \ CTRL + d
Porównaj katalogi CTRL-x + d SHIFT + F2
Odśwież zawartość panelu CTRL + r F2
Ukryj program CTRL + o SHIFT + ESC
Odwróć zaznaczenie M + * NUM *
Znajdź plik ALT + ? ALT + F7
Szybki podgląd CTRL-x + q CTRL+q
Zmiana praw plików i katalogów — chmod C-x + c brak
Zmiana właściciela, grupy do której należy plik - chown C-x + o brak
Utwórz skrót (dowiązanie symboliczne) C-x + s SHIFT+CTRL+F5

Sekwencję klawiszy CTRL-x + d wywołuje się naciskając razem CTRL i x, a potem już tylko klawisz d — podobnie jak w edytorze Emacs. Skrótem, o którym warto wspomnieć, jest skrót ESC+0,1,2…9, zastępuje on przyciski F1-F10 — skrót ten przydatny jest w przypadku użycia mc na terminalach które maja problemy z obsługą przycisków F1-F10.

Podgląd plików

Midnight Commander, jak każdy nowoczesny program do zarządzania plikami, oferuje możliwość podglądu ich zawartości. Obsługiwane są archiwa zip, rar, tar* jak również pakiety rpm i deb oraz pliki pdf i man. Możliwe jest też przeglądanie zawartości obrazów iso bez potrzeby wcześniejszego montowania ich w systemie plików. Wszystkie wymienione wyżej rodzaje plików traktowane są tak jak katalogi. Aby przejrzeć zawartość interesującego obrazu iso, wystarczy wybrać go kursorem i nacisnąć enter.
Dodatkowo program oferuje szybki podgląd pliku — w przypadku wybrania tej opcji, zawartość podświetlonego przez kursor pliku zostanie wyświetlona w sąsiednim panelu. Opcja ta dostępna jest w menu prawy/lewy oraz pod skrótem CTRL-x + q.

Praca z grupami plików

Aby zaznaczyć jakiś plik, najeżdżamy na niego kursorem i naciskamy Insert, można też zaznaczyć grupę plików, korzystając z pomocy znaków globalnych. Aby wybrać grupę plików, wybieramy z menu opcję zaznacz grupę lub korzystamy ze skrótu klawiszowego <shift +>. W wyświetlonym menu podajemy wyrażenie. Na przykład *.odt zaznaczy wszystkie pliki o rozszerzeniu pdf, przycisk — wywoła menu cofające zaznaczenie a natomiast skrót shift * odwróci zaznaczenie — w naszym przypadku zaznaczone zostaną wszystkie pliki, które nie mają rozszerzenia odt.
Zaznaczoną grupę plików można nie tylko usuwać, przenosić i kopiować — aby wykonać dowolną operację, należy wybrać menu użytkownika (F2 lub też plik -> menu użytkownika) i tam wybrać opcję "Do something on the tagged files" (skrót: @) i wprowadzić polecenie, które chcemy wykonać na wybranych plikach.
Istnienie też możliwość aby mc wyświetlał tylko pliki o określonych przez użytkownika właściwościach, aby to zrobić z menu prawy lub lewy wybieramy opcję filtr i podajemy wyrażenie filtrujące np.: *.pdf wyświetli tylko pliki z rozszerzeniem pdf przy czym mc wyświetli też katalogi oraz dowiązania.

Wyszukiwanie plików

Mc oferuje również możliwość wyszukiwania plików, menu wyszukiwania znajduje się w Polecenie -> Znajdź plik lub pod skrótem <Alt,Shift ?>. W wyszukiwaniu można używać wyrażeń regularnych. Znalezione pliki zostaną wyświetlone w specjalnym "okienku", możliwe jest wykonanie na nim kilku operacji: zmień spowoduje otwarcie w panelu katalogu w którym znajduje się wybrany plik, ponownie — przeniesie z powrotem do menu wyszukiwania aby zmienić kryteria, filtruj — wyświetla wszystkie znalezione pliki w jednym panelu.

Praca z serwerami

Aby połączyć się z serwerem, w menu prawy (lub lewy) wybieramy interesujące nas połączenie (ftp, ssh, smb), po czym podajemy adres serwera, nazwę użytkownika i hasło w formacie: <nazwa użytkownika:hasło@adres serwera> lub też <nazwa użytkownika@adres serwera>. W drugim przypadku, po nawiązaniu połączenia, program poprosi o podanie hasła.
W przypadku połączenia po powłoce, wykorzystywany jest protokół FISH zaprojektowany specjalnie dla programu Midnight Commander, wykorzystywany jest on również przez lftp oraz KDE jako kio-slave fish://. Protokół ten po stronie serwera wymaga jedynie działającego deamona ssh.
Istnieje szybszy sposób nawiązywania połączeń z serwerami. Aby szybko połączyć się z serwerem ftp w linii poleceń mc, wystarczy wpisać cd /#ftp:nazwa użytkownika:hasło@adres serwera/katalog, ewentualnie w przypadku połączenia anonimowego wystarczy wpisać ftp:adres serwera. Zatem aby połączyć sie z popularnym serwerem TASK, wystarczy wpisać: cd /#ftp:ftp.task.gda.pl. Identycznie można połączyć się z serwerem ssh: cd /#sh:użytkownik@adres serwera/katalog.

Obsługa pakietów rpm i deb

Jak już wcześniej wspomniałem mc obsługuje dwa najpopularniejsze systemy pakietowania w świecie Linuksa: rpm i deb. Aby przejrzeć zainstalowane w systemie pakiety rpm, wystarczy wpisać w linii poleceń programu cd #rpms i po chwili w aktywnym panelu zostaną wyświetlone wszystkie zainstalowane w systemie pakiety, pogrupowane wg kategorii. Podobnie w systemach korzystających z pakietów deb, wystarczy wpisać cd #apt lub cd #dpkg, aby móc przegląd dostępne programy w bazie pakietów.

Klawisz F10 w gnome-terminal

Istnieje konflikt skrótów klawiaturowych pomiędzy gnome-terminal a mc, dotyczy on między innymi przycisku F10, który w mc służy do zamykania programu a w gnome-terminal do rozwijania górnego menu. Aby usunąć tę niedogodność, należy wydać polecenie:
gconf —set /apps/gnome-terminal/global/use_menu_accelerators —type boot flase
Aby powrócić do oryginalnych ustawień, należy wartość false zamienić na true. Rozwiązanie to pochodzi z polskiego wiki openSUSE.

Niniejszy artykuł nie opisuje wszystkich aspektów pracy z mc, dlatego zapraszam do przestudiowania polskojęzycznego pliku pomocy dostępnego pod przyciskiem F1 oraz stron manuala dostępnych pod poleceniem man mc.

Linki

Strona domowa projektu
Midnight Commander w wikipedii po polsku i po angielsku.
Więcej na temat znaków globalnych i wyrażeń regularnych możesz przeczytać w artykule wszystko o konsoli

Dodaj nową wypowiedź
lub Zaloguj się jako użytkownik serwisu Wikidot.com
(nie będzie opublikowany)
- +
O ile nie zaznaczono inaczej, treść tej strony objęta jest licencją Creative Commons Attribution-NonCommercial 3.0 License