Podstawy Linuksa – część 2

Druga część elementarnej wiedzy o Linuksie. Praca z plikami tekstowymi. Polecenia: cat, more, less, head, tail. Przekierowanie wejścia i wyjścia. Filtr grep. Edytory tekstu.

Hierarchia systemu plików

Filesystem Hierarchy Standard (1993) – powszechnie stosowana hierarchia katalogów:

/ – katalog główny (root)
/bin, /sbin – pliki wykonywalne, systemowe pliki wykonywalne (binaries, system binaries)
/boot – boot loader
/dev – urządzenia (devices)
/etc – konfiguracja systemu i usług
/home, /root – pliki osobiste użytkowników i superużytkownika root
/lib – biblioteki dla bin i sbin (libraries)
/media, /mnt – punkt montowania urządzeń podłączanych do komputera i tymczasowych (mount points)
/opt – pakiety dodatkowe (optional)
/proc – jądro, stan procesów (process’ status)
/tmp – pliki tymczasowe (temporary files) mogą być (zazwyczaj są) usuwane przy ponownym uruchomieniu komputera
/var – pliki zmienne (variable files) m.in.: log, spool, www, tmp
/usr – zasoby systemowe, pliki użytkownika tylko-do-odczytu (Unix System Resources) bin, lib, share, src

Wyświetlanie pliku tekstowego

Do wyświetlenia zawartości plików tekstowych pod konsolą służą polecenia: cat, more, less, head i tail.
Sprawdź do czego służą te polecenia komendą man:

man cat
man less
...

Pobierzemy przykładowy plik tekstowy, który przyda się podczas ćwiczeń.
Przechodzimy do katalogu domowego:

cd

I pobieramy przykładowy plik.

wget https://serwer-vps.pl/files/inwokacja.txt

1. Wyświetlamy zawartość pliku w terminalu.

cat inwokacja.txt

2. Wyświetlamy zawartość pliku w programie less

less inwokacja.txt

Program less jest przydatny do przeglądania długich plików, nie mieszczących się na ekranie.
Użyj klawiszy PageUp, PageDown, , aby przeglądać plik.

Aby wyszukać tekst użyj klawisza / i wprowadź wyszukiwany ciąg znaków u dołu ekranu.

Aby wyjść z programu less wciśnij klawisz q.

3. Wyświetl fragmenty pliku przy pomocy programów head i tail

head inwokacja.txt
tail inwokacja.txt
tail -15 inwokacja.txt

Dopełnianie nazw

Nie musisz wpisywać całych długich poleceń czy nazw plików.
Powłoka Bash posiada mechanizm uzupełniania, działa on dla komend, ścieżek i nazw plików.
Dopełnienie nazw wywołujemy za pomocą tabulatora TAB.
Spróbuj:

cat inw[TAB]
cat /etc/pas[TAB]
ca[TAB]

Powłoka wyświetli możliwe dopełnienia lub jeśli jest tylko jedna możliwość dopełni polecenie.

Przekierowanie wejścia i wyjścia

Standardowym wejściem zazwyczaj jest klawiatura, a standardowym wyjściem ekran, lecz nie zawsze. Mamy do dyspozycji kilka operatorów dzięki którym możemy to zmienić.

> – przekierowanie wyjścia z programu do pliku.

 ls -alh /etc > lista.txt

Powyższe polecenie przekieruje wyjście komendy ls -alh do pliku lista.txt, czyli utworzy nam plik zawierający listę plików znajdujących się w katalogu /etc.

echo "ala ma kota" > plik.txt

Wyjście z programu echo wpisze do pliku plik.txt

>> – doklejenie wyjścia z programu na koniec pliku

echo "ala ma psa" >> plik.txt

dopisze „ala ma psa” na koniec pliku plik.txt

| czyli tzw. potok pozwala na przekierowanie wyjścia jednego programu na wejście drugiego programu.

tail -15 inwokacja.txt | head
cat inwokacja.txt | wc -l 

cat wypisuje inwokacja.txt na wyjście, które przekierowujemy na program liczący wiersze.

Wyszukiwanie w plikach – grep

Do wyszukiwania tekstu służy komenda grep. Wyszukuje znaki, łańcuchy znaków lub słowa w podanym jako argument pliku lub plikach. Jest to jedna z najbardziej użytecznych komend w Linuksie. Kilka prostych przykładów:

grep owie inwokacja.txt
grep gdzie inwokacja.txt
grep -i gdzie inwokacja.txt
grep bash /etc/passwd

Edytory tekstowe

Najpopularniejsze edytory tekstowe działające w terminalu to vim (vi) oraz nano. Vim potężny, lecz wymaga poświęcania nieco czasu na naukę, nano prosty i można go zacząć używać z marszu.

Edytor nano
Obsługa nano jest bardzo prosta. Funkcje wywołuje się kombinacją klawisza Ctrl i odpowiedniej litery. U dołu okna edytor pokazuje dostępne funkcje.

  • Ctrl+O – zapisz plik
  • Ctrl+K – przenieś bieżącą linię do bufora kopiowania
  • Ctrl+U – wklej linię z bufora
  • Ctrl+W – wyszukiwanie
  • Ctrl+X – zakończ

Edytor Vim
Edytor vim to potężne narzędzie, umożliwiające bardzo efektywną pracę z tekstem. Jednak na początku trzeba poświęcić chwilę – ok 30 minut – na jego naukę.
W sieci krążą dowcipy – zapewne oparte na faktach – o użytkownikach, którzy nie mogą wyjść z vima, więc podaję tutaj pewny sposób: [esc]:q! 😉

A pisząc już na poważnie to gorąco zachęcam do poświęcenia kliku chwili na naukę edytora vim, zwłaszcza, że posiada świetny interaktywny samouczek w języku polskim.
Aby go uruchomić wydajemy polecenie:

vimtutor

W praktyce administratora Linuksa, edycja plików tekstowych to naprawdę spora część pracy, a czas poświęcony na naukę edytora vim na pewno szybko się zwróci.

Dodaj komentarz