Linux: Kniha kouzel, vanilková příchuť 2.14 (15. července 2022)
Veškerá moc příkazové řádky/příkazového řádku přehledně, pro začátečníky i pokročilé

12. Prohlížení textových souborů

Řada 2.x vanilkové příchuti Linuxu: Knihy kouzel je od 15. července 2022 do 1. března 2025 ve stavu dlouhodobé pasivní údržby; nahlášené chyby budou opravovány, ale aktivní vývoj se již věnuje jiným projektům. Máte-li zájem pokračovat v tvorbě Linuxu: Knihy kouzel pro novější verze linuxových operačních systémů, kontaktujte autora nebo rovnou vytvořte odnož.

1. Úvod

Tato kapitola se specializuje na prohlížení textových souborů (např. systémových záznamů), tedy zobrazování jejich obsahu uživateli bez možnosti tento obsah měnit, ale s možností ho prohledávat a filtrovat.

Pokud máte na práci se soubory větší požadavky, než co vám nabízejí nástroje popsané v této kapitole, měli byste použít plnohodnotný editor, např. vim.

Příkaz „less“ je vyvíjen v rámci projektu GNU, příkaz „more“ nikoliv.

2. Definice

  • Řádek souboru (resp. řádka souboru) je řádek, jak se nachází v prohlíženém souboru (tedy posloupnost znaků oddělená od ostatních řádků ukončovačem řádky).
  • Řádka obrazovky (resp. řádek obrazovky) je řádka, jak je prohlížecím programem zobrazena na terminálu. Jeden řádek souboru se může zalomit na více řádek obrazovky.

3. Zaklínadla

3/1 Prohlížení a sledování souborů

@otevřít textový soubor v programu less/programu more#1
less [volby] [--] cesta/k/souboru
more [--] cesta/k/souboru
@sledovat obsah přibývající na konci souboru (alternativy)#2 (1)
tail -f [--] soubor
less [-N] +F [--] soubor
@otevřít textový soubor v režimu pro čtení editoru „vim#3
view [--] cesta/k/souboru
@sledovat měnící se obsah krátkého souboru#4 (2)
watch -d -n interval-sekund "cat [--] soubor"
@prohlížet text získaný přes rouru#5
zdroj | less [-N] [-R] -

3/2 Volby příkazu less

@zachovat terminálové formátování vstupu (escape-sekvence)#1
-R
@zobrazit řádek č. N/konec souboru#2
+N
+G
@po spuštění vyhledat první shodu s regulárním výrazem#3
'+/reg. výraz'

4. Zaklínadla: less (ovládání)

4/1 Základní ovládání

@ukončit less#1
q
@skok o stránku vpřed/vzad#2
PageDown
PageUp
@skok o řádku obrazovky vpřed/vzad#3
@skok o řádku souboru vpřed/vzad#4
/^Entern
@skok na začátek/na konec/doprostřed souboru#5
Home
End
50p
@zobrazit vestavěnou nápovědu#6
h
@skok na řádek č. N#7
Ng
@znovunačíst obsah souboru#8
Shift+R

4/2 Vyhledávání

@skákat po řádcích obrazovky odpovídajících poslednímu hledání vpřed/zpět#1
[kolikrát]n
[kolikrát]N
@vyhledat vpřed řádku obsahující shodu s reg. výrazem#2 (3)
/
regulární výraz
Enter
@vyhledat vpřed řádku neobsahující shodu s reg. výrazem#3
/
Ctrl+N
regulární výraz
Enter
@zvýraznit podřetězce odpovídající regulárnímu výrazu#4
/
Ctrl+K
regulární výraz
Enter
@přepnout (vypnout či zapnout) zvýraznění shod s r.v.#5
Esc
U

4/3 Filtrování

@zobrazit jen řádky obsahující/neobsahující shodu s reg. výrazem#1
&regulární výrazEnter
& Ctrl+N regulární výrazEnter
@vypnout filtrování#2
&Enter

4/4 Pojmenované pozice

@přepnout zobrazení sloupce s pojmenovanými pozicemi#1
-JEnter
@pojmenovat pozici#2
mpismeno
@skok na pozici#3
'pismeno

4/5 Ostatní příkazy

@přepnout (vyp:zap) sloupec s čísly řádků#1
-NEnter
@nezalamovat řádky a umožnit pohyb doprava a doleva pomocí klávesových šipek#2
--shiftEnter1Enter-SEnter
@zobrazit ve stavové řádce pozici v souboru (dočasně/do ukončení)#3
Ctrl+G
-MEnter
@překreslit obsah terminálu#4
Ctrl+L
@spustit Bash#5
!bashEnter

5. Zaklínadla: more

5/1 Ovládání „more“

@ukončit more#1
q
@skok o stránku vpřed#2
Space
@skok o řádku obrazovky vpřed#3
Enter
@skok o řádku souboru vpřed#4
@zobrazit vestavěnou nápovědu#5
h
@zobrazit číslo aktuální řádky (souboru, nebo obrazovky?)#6
=

6. Instalace na Ubuntu

Všechny použité příkazy jsou základními součástmi Ubuntu, přítomnými i v minimální instalaci, jen není-li nainstalovaný „vim“, použije se místo něj podobný editor „vi“.

7. Tipy a zkušenosti

  • Program „less“ se hodí na jednoduché prohlížení, pro komplikovanější úlohy použijte editor „vim“ nebo jiný textový editor, případně s předzpracováním prohlíženého souboru vhodným nástrojem pro zpracování textu.
  • Prohlížíte-li si programem „less“ text z roury, jejíž zdrojový příkaz ještě nedoběhl, a pokusíte-li se přitom přejít za konec dosud načteného vstupu, program „less“ se zastaví a bude čekat na další vstup; z tohoto stavu ho můžete probrat zkratkou Ctrl+C.

8. Další zdroje informací

9. Zákulisí kapitoly

V této verzi kapitoly chybí:

  • nastavení velikosti tabulátoru (less -x)

Tato kapitola záměrně nepokrývá:

  • nic
1 Příkaz „tail“ vypisuje nové řádky okamžitě, příkaz „less“ se zpožděním. Sledování v obou případech ukončíte Ctrl+C; příkaz „less“ pak musíte ještě navíc uzavřít klávesou „q“. less -N zobrazí čísla řádek.
2 Sledování ukončíte klávesovou zkratkou Ctrl+C. Náhradou příkazu „cat“ za „sed“ či „egrep“ můžete soubor před sledováním přefiltrovat.
3 Vykřičník jako první znak má v tomto případě zvláštní význam, takže pokud jím začíná váš regulární výraz, musíte ho odzvláštnit zpětným lomítkem.
Líbí se vám tento projekt a chcete, aby byl ještě lepší? Můžete mi s tím pomoci. Zmiňte se o něm technicky zdatným přátelům, opravte překlepy a nahlašte nefunkční zaklínadla, aby mohla být opravena; poskytněte mi zpětnou vazbu nebo se zapojte do vývoje nových kapitol. Další informace na GitHubu v dokumentu Jak se zapojit.
[BY-SA]

Veškerý obsah této stránky (text, obrázky, zdrojový kód) je možno upravovat a šířit pod podmínkami licence Creative Commons Attribution-ShareAlike 4.0 International. Upozorňuji, že uvedená licence vyžaduje uvedení seznamu autorů, licence a zdroje a poskytnutí stejné či kompatibilní licence k provedeným změnám, jsou-li nějaké. Příslušné údaje jsou dostupné na stránce „Přehled autorů“. Šíření obsahu bez těchto údajů nebo šíření upravené verze bez poskytnutí adekvátní licence k provedeným úpravám je pravděpodobně porušení licenčních podmínek a může být postihováno. Poskytování zdrojového kódu při šíření není touto licencí vyžadováno.

Pro nové verze, další informace, aktuální zdrojový kód a možnost se zapojit do projektu „Linux: Kniha kouzel“ navštivte jeho repozitář na GitHubu.