wypisuje komunikat podany w argumentach
Postać: echo napis…
Przykład:
$ echo Witaj świecie
Witaj świecie
wyświetla zawartość strumienia wejściowego lub zawartość plików
Postać: cat [opcje] [plik…]
Przykład:
$ cat /etc/passwd
wyświetli zawartość pliku /etc/passwd.
Polecenie cat może też posłużyć do tworzenia plików tekstowych
$ cat > pliktekstowy
to jest tekst
który zostanie umieszczony
w pliku o nazwie pliktekstowy
Aby zakończyć wciśnij Ctrl+ D
lub do łączenia kilku plików w jedną całość - rezultat można przekierować do pliku:
$ cat pliktekstowy dane.txt > nowy.txt
wyświetla zawartość pliku strona po stronie
Postać: more [opcje] plik
Przykład:
$ more /etc/passwd
wyświetli zawartość pliku passwd
$ ls /bin | more
pozwala przejrzeć listę plików w katalogu /bin
wyświetl zawartość pliku strona po stronie
Postać: less [opcje] plik
Jest to ulepszona wersja polecenia more pozwalająca poruszać się po pliku zarówno w przód jak i w tył.
Przykład:
$ less /etc/passwd
Programy more i less posiadają wiele funkcji dostępnych za pomocą skrótów klawiszowych o których możemy się dowiedzieć wciskając h. Inne przydatne funkcje uzyskamy wciskając: q - wyjście z programu, /wyrażenie - poszukuje wyrażenia w pliku, n - szuka następnego wystąpienia.
wyświetla początek pliku
Postać: head [opcje] plik…
Przykład:
$ head /etc/passwd
wyświetli 10 pierwszych linii pliku passwd
Najważniejsze opcje:
-n liczba wyświetli określoną liczbę początkowych linii
-c liczba wyświetli określona liczbę początkowych znaków
Przykład:
$ head -c 10 /etc/passwd
wyświetli 10 pierwszych znaków pliku passwd
$ ls | head -n 3
wyświetli nazwy trzech pierwszych plików z bieżącego katalogu
wyświetla koniec pliku
Postać: tail [opcje] plik…
Działanie i opcje takie same jak w poleceniu head z tą różnicą, że wyświetlane jest zakończenie pliku.
Przykład:
$ tail -n 4 /etc/passwd
wyświetli cztery ostatnie linie pliku passwd
Przykład:
$ tail -c 4 /etc/passwd
wyświetli cztery ostatnie znaki pliku passwd
Opcja -f pozwala śledzić na bieżąco zawartość końcową pliku. Jest to przydatne np. przy śledzeniu plików logujących działanie programów, np.:
$ tail -f /var/log/lastlog
daje podgląd zmian pojawiających się na końcu pliku /var/log/lastlog w czasie rzeczywistym.
liczy ilość znaków, słów i linii w pliku
Postać: wc [opcje] plik…
Najważniejsze opcje:
-c drukuje liczbę znaków/bajtów w pliku
-w drukuje liczbę wyrazów w pliku
-l drukuje ilość linii w pliku
Przykład:
$ wc -c dane.txt
wyświetli ilość bajtów zajętych przez plik
Przykład:
$ wc -l *.txt
wyświetli liczbę linii we wszystkich plikach o rozszerzeniu .txt znajdujących się w bieżącym katalogu.
$ ls /bin/ | wc -l
zwróci liczbę plików w katalogu /bin/.
wypisuje posortowaną zawartość pliku tekstowego
Postać: sort [opcje] plik…
Przykład:
$ sort dane.txt > posortowane.txt
spowoduje posortowanie linii zawartych w pliku dane.txt i przesłanie wyniku do pliku posortowane.txt
Niektóre opcje:
-r odwraca kolejność sortowania
-u usuwa duplikaty
-f wyłącza rozróżnianie małych i dużych liter
-n sortowanie liczb (standardowo dane sortowane traktowane są jako ciągi znaków)
Przykład:
$ du . | sort -n
wyświetli listę plików w bieżącym katalogu posortowaną według rozmiaru
+liczba pozwala pominąć przy sortowaniu określoną liczbę pól (pola standardowo są rozdzielone białymi znakami (przestarzała wersja))
-k poz1[,poz2] pozwala specyfikować względem którego pola (kolumny) chcemy sortować
-t separator używa podanego znaku jako separatora pól (kolumn)
Przykład:
$ ls -l | sort +4 -n
wyświetli posortowaną listę plików według piątej kolumny otrzymanej za pomocą polecenia ls -l
$ sort -k 5 -t : /etc/passwd
Wyświetli posortowana listę użytkowników (piąta kolumna pliku passwd, gdzie kolumny sa oddzielone dwukropkami).
wyświetla linie pasujące do wzorca
Postać: grep [opcje] wzorzec [plik…]
Przykład:
$ grep student /etc/passwd
wyświetli linie z pliku /etc/passwd zawierającą słowo ”student”
Często stosuje się to polecenie jako filtr w strumieniu, np:
$ ls /bin | grep z | wc -l
wyświetli liczbę plików z katalogu bin zawierających w nazwie literę ”z”
Najważniejsze opcje:
-v wyświetlane są wiersze w których wzorzec nie pojawia się
-l wyświetli tylko nazwę pliku w którym znaleziono wzorzec
-i nie rozróżnia dużych i małych liter we wzorcu
-A n wyświetla także kolejnych linii
-B n wyświetla także poprzedzających linii
Wypisuje wybrane fragmenty linii
Postać: cut [opcja]... [plik]...
Niektóre opcje:
-b N wypisuje tylko podane bajty
-f N wypisuje tylko podane kolumny (standardowo separatorami kolumn są białe znaki)
-d znak użyj podanego znaku jako separatora kolumn
Przykład:
$ cut -c 1 /etc/passwd
wyświetli tylko pierwszy znak z każdej linii.
$ cut -c 4-7 plik
wyświetli znaki od 4-go do 7-go.
$ cut -f 2- plik
Wyświetli linie bez pierwszej kolumny
$ cut -d : -f 5 /etc/passwd
wyświetli imiona i nazwiska użytkowników (5 kolumna pliku passwd, gdzie kolumny oddzielone są dwukropkiem).
łączy linie plików
Postać: paste pliki...
Przykładowo:
$ paste plik1 plik2
wypisze na standardowym wyjścuiu połoczone zawratości obu plików.
Zamienia znaki wczytane ze standardowego wejścia.
Postać: tr łańcuch1 łańcuch2
tr -d łańcuch
tr -s łańcuch
Najważniejsze opcje:
-d usuń podane w łańcuchu znaki
-s usuń wielokrotne wystąpienia tych samych znaków
Przykład:
$ echo $PATH | tr : ’ ’
wyświetla wartość zmiennej $PATH zastępując dwukropki spacjami.
$ echo Witaj swiecie | tr ai ia
w podanym haśle zamienia literę ’i’ na ’a’ oraz literę ’a’ na ’i’
$ echo Witaj swiecie | tr [a-z] [A-Z]
zamienia małe litery na duże
$ cat plik | tr -d ’ ’
usuwa spacje z pliku
$ cat plik | tr -s ’ ’
usuwa powtórzenia spacji w pliku
porównuje pliki znak po znaku
Postać: cmp [opcje] plik1 plik2
Polecenie wyświetla pozycje pierwszego napotkanego znaku (bajtu) różniącego oba pliki.
Przykład:
$ cmp plik1.txt plik2.txt
plik1.txt plik2.txt różnią się: bajt 30 linia 2
Najważniejsze opcje:
-c wypisuje różniące się znaki
znajduje różnice pomiędzy plikami
Postać: diff [opcje] plik1 plik2
Przykład:
$ diff plik1.txt plik2.txt
Wynikiem działania jest wyświetlenie fragmentów tekstu, które są różne w obu plikach wraz z informacją jak należy zmienić pierwszy z plików aby otrzymać drugi z użyciem 3 operacji: zamień (c), usuń (d), dodaj (a) fragment tekstu.
Przykładowo komunikat 1,10c2,5 oznacza, że należy zamienić linie od 1 do 10 w pierwszym pliku na tekst który występuje w liniach od 2 do 5 w drugim pliku.
3a5 oznacza, że w linii trzeciej pierwszego pliku należy dodać 5 linię z drugiego pliku
Wyjście programu diff tworzy łatkę, którą można zaaplikować za pomocą polecenia patch na drugim pliku aby jego zawartość uczynić identyczną z zawartością pliku pierwszego.
Przykład:
$ diff plik1 plik2 > patch.txt
$ patch plik1 patch.txt
aplikuje łatkę z programu diff na pliku tekstowym
Postać: patch plik_oryginalny plik_zawierający_łatkę
Inne przydatne polecenia i narzędzia (textutils): nano, emacs, vim, awk, join, tac, nl, od, split, csplit, uniq, comm, ptx, tsort, fold