< Všechna témata
Tisk

Základní příkazy


Shell

Shell je v podstatě program, který přijímá naše příkazy z klávesnice a předává je operačnímu systému k provedení. V grafickém prostřední (GUI) aplikace jako „Terminal“ nebo „Console“ spouštějí shellové prostředí.

Shell je prostředí, které umožňuje uživatelům komunikovat s operačním systémem pomocí příkazového řádku. Jedná se o textové rozhraní, kde můžete zadávat příkazy, spouštět programy a skripty, spravovat soubory a provádět mnoho dalších úkonů. Shell je základním nástrojem pro správu systému v Linuxu.

Existuje mnoho různých shellů, z nichž každý má své specifické vlastnosti a syntax. My budeme používat shell program bash (Bourne Again Shell), který je ve většině distribucí Linuxu nastaven jako výchozí. Dalšími oblíbenými shelly jsou například ksh (Korn Shell), zsh (Z Shell) a tsch (TENEX C Shell), těm se ale věnovat nebudeme.

Shellová výzva (prompt) obvykle vypadá takto:

uzivatelskeJmeno@hostname:aktualniAdresar$

například:

lukas@lukasuvLinux:/home/lukas$

Výzva obvykle obsahuje informace o aktuálním uživateli, názvu počítače a aktuálním adresáři. Znak $ na konci výzvy značí, že jste přihlášeni jako běžný uživatel. V případě administrátorského účtu (root) by výzva obsahovala znak #.

Začněme jednoduchým příkazem echo. Ten stejně jako v jiných prog. jazycích vypíše textové argumenty na obrazovku. V shellu ho můžeme využít například pro testování výstupů v rámci skriptů.

Pokud zadáme příkaz:

echo "Ahoj MěSOŠ"

vypíše se nám Ahoj MěSOŠ


pwd (print working directory)

Všechno v Linuxu je soubor, což pochopíme až pronikneme hlouběji do Linuxu. Každý soubor je uspořádán v hierarchickém stromu adresářů. První adresář v souborovém systému se příznačně jmenuje kořenový adresář (root directory). Kořenový adresář obsahuje mnoho složek a souborů, do kterých můžeme ukládat další složky a soubory atd. Více si povíme v jiné kapitole.

Umístění těchto souborů a adresářů se označuje jako cesty. Pokud máme složku s názvem home a v ní složku s názvem lukas a další složku v této složce s názvem filmy, vypadala by tato cesta takto: /home/lukas/filmy.

Příkaz pwd zobrazí aktuální pracovní adresář. Je to užitečné, když potřebujeme zjistit, kde se právě nacházíme v systému souborů. Kdykoliv budeme ztraceni, použijeme tento příkaz pro zjištění pozice.

pwd

cd (change directory)

Teď už víme, kde se nacházíme, se podíváme, jakým stylem se budeme pohybovat po souborovém systému. Budeme se muset orientovat pomocí cest – existují dva typy zadávání, a to absolutní a relativní cesty.

  • Absolutní cesta – jedná se o cestu z kořenového adresáře., kdy kořenový adresář je hlavní adresář. Vždy když cesta začíná znakem /, znamená to, že začínáme z kořenového adresáře. Například: /home/lukas/Desktop
  • Relativní cesta – jedná se o cestu z místa, kde se právě nacházíme v souborovém systému. Pokud bych se nacházel v umístění /home/pete/Documents a chtěl se dostat do adresáře uvnitř dokumentů s názvem skola, nemusím zadávat celou cestu od kořenového adresáře jako /home/lukas/Documents/skola, místo toho můžu přejít do adresáře takto skola/

Příkaz cd nám umožňuje změnit aktuální pracovní adresář. Stačí zadat cestu k adresáři, kam se chceme přesunout

cd /home/lukas/Pictures

Nyní jsme změnili umístění adresáře na /home/lukas/Pictures. Pokud mám v tomto adresáři složku například s názvem Chorvatsko, můžu do ní přejít jednoduchým příkazem

cd Chorvatsko

Všimli jste si, že jsme použili pouze název složky? To proto, že jsme se už nacházeli v adresáři /home/lukas/Pictures

Navigování pomocí absolutních a relativních cest může být v hojnějším užívání velmi otravné, naštěstí existuje několik zkratek na usnadnění:

  • . (aktuální adresář) – toto je adresář, ve kterém se právě nacházíme.
  • .. (nadřazený adresář) – přenese nás do adresáře nad aktuálním adresářem.
  • ~ (domovský adresář) – tento adresář je ve výchozím nastavení náš domovský adresář (např. /home/lukas)
  • (předchozí adresář) – přenese nás do předchozí adresáře, kde jsme právě byli
cd . 
cd ..
cd ~
cd -

ls (list directories)

Když už víme, jak se pohybovat po systému, jak zjistíme, jaké soubory máme k dispozici? Pomocí příkazu ls můžeme vypsat obsah adresářů. Příkaz ve výchozím nastavení vypíše adresáře a soubory v aktuálním adresáři, ale můžeme i zadat cestu, jejíž adresáře chceme vypsat

ls
ls home/lukas

Jedná se o docela užitečný nástroj, který nám také zobrazí podrobné informace o souborech a adresářích, na které se díváme.

Všimněte si, že ne všechny soubory v adresáři budou viditelné. Názvy souborů začínající znakem . jsou skryté. Můžeme si je však zobrazit, když k příkazu přidáme příznak -a (a jako all – všechny)

ls -a

Existuje ještě jeden užitečný příznak, a to -l (long – dlouhý), který zobrazí podrobný seznam souborů v dlouhém formátu. Zobrazí se podrobné infromace, počínaje zleva: oprávnění k souboru, počet odkazů, jméno vlastníka, skupina vlastníků, velikost souboru, časové razítko poslední změny a název souboru/adresáře.


touch

Pokud cheme vytvořit nějaké soubory, můžeme použít příkaz touch. Díky němu můžeme vytvořit nové prázdné soubory

touch mujSoubor

A je to, máme nový soubor.

Díky touch můžeme změnit i časová razítka existujících souborů a adresářů. Zkuste si to.


file

Soubory už vytvářet umíme, ale všimli jste si, že název souboru nedopovídá standardnímu pojmenování, jaké známe např. z Windows?

Standardně, pokud vidíme soubor s názvem skola.jpg, tak očekáváme JPEG soubor s obrázkem.

V Linuxu se ale nevyžaduje, aby názvy souborů reprezentovaly obsah souboru – můžeme vytvořit soubor s názvem auto.gif, které ve skutečnosti není GIF.

Pokud chceme zjistit, o jaký druh souboru se jedná, můžeme použít příkaz file – díky němu zobrazíme popis obsahu souboru

file skola.jpg

cat

Teď si ukážeme, jak soubor můžeme přečíst. Jednoduchý příkaz cat (zkratka pro concatenate) nám dokáže zobrazit obsah jak jednoho, tak i více souborů (spojí je).

cat nakup uctenka

Pro zobrazení velkých souborů se nehodí – je určen pouze pro krátký obsah,´. Pro větší txt soubory používáme jiné nástroje (probereme v jedné z dalších kapitol).


less

Pro zobrazení větších textových souborů než je jednoduchý výstup, můžeme použít příkaz less. Text se zobrazuje stránkovaně, takže můžeme soubor procházet stránku po stránce.

less /home/lukas/Documents/textovysoubor

V rámci zobrazení použijeme následující příkazy:

  • q – slouží k ukončení práce v less a návratu do shellu.
  • klávesy Page up, Page down, šipka nahoru a šipka dolu – přepínání mezi stránkami.
  • g – přesune na začátek textového souboru.
  • G – přesune na konec textového souboru.
  • /[hledat] – můžeme vyhledávat konkrétní text uvnitř textového dokumentu. Před slovy, která chceme vyhledat, zadáme znak /
  • h – vyvolání nápovědy less.

history

Pokud chceme zobrazit historii zadaných příkazů, použijeme příkaz history

history

Pokud chceme použít příkaz dříve zadaný – stiskneme šipku nahoru.

Pomocí zkratky CTRL+R můžeme vyhledávat v historii, opětovným stiskem CTRL+R můžeme procházet nalezené výsledky


clear

Pokud se nám zdá, že máme v terminálu už moc věcí, použijeme příkaz clear, ten vyčistí okno s terminálem.

clear

cp (copy)

Pro kopírování souborů využijeme příkaz cp.

cp ostrov.jpg /home/lukas/Documents/fotky_chorvatsko

V tomto příkazu je soubor s názvem ostrov.jpg to, co chceme kopírovat a /home/lukas/Documents/fotky_chorvatsko cesta, kam soubor(y) budeme kopírovat.

Můžeme kopírovat více souborů a adresářů, využívat i zástupné znaky (wildcards – žolíky). Zástupný znak je znak, kterým můžeme nahradit výběr založený na vzoru. Tyhle znaky můžeme využívat v každém příkazu.

  • * – nejvyšší zástupný znak – zastupuje všechny jednotlivé znaky nebo řetězce
  • ? – používá se k reprezentaci jednoho znaku
  • [] – slouží k vyjádření libovolného znaku v závorce
cp *.jpg /home/lukas/Pictures

Tento příkaz zkopíruje všechny soubory s příponou .jpg v aktuálním adresáři do adresáře s fotkami.

Užitečný je i přepínač -r, který rekurzivně zkopíruje soubory a adresáře v rámci adresáře.

Pokud použijeme pouze cp na adresáři, který obsahuje několik souborů např. do adresáře Documents, nebude to fungovat – museli bychom zkopírovat soubory a adresáře uvnitř pomocí přepínače -r.

cp -r chorvatsko/ /home/lukas/Documents

Zvláštní situace nastane, pokud kopírujeme soubor do adresáře se stejný názvem – soubor bude přepsán tím, čím kopírujeme. Pokud máme soubor, který nechceme omylem přepsat, použijeme interaktivní přepínač -i, ten nás před přepsání vyzve.

$ cp -i mujsoubor /home/lukas/Documents

mv (move)

Tento příkaz slouží k přesování souborů a také k jejich přejmenování. Z hlediska přepínačů a funkcí je dost podobný příkazu cp.

Pokud potřebujeme přejmenovat soubor, napíšeme:

mv starynazev novynazev

Nebo můžeme soubor přesunout do jiného adresáře

mv soubor1 /home/lukas/Documents

A přesunout můžeme i více než jeden soubor

mv soubor1 soubor2 /home/lukas/Documents

Adresáře můžeme taktéž přejmenovat

mv adresar1 adresar2

Stejně jako u cp, pokud přesuneme soubor nebo adresář, přepíše vše ostatní ve stejném adresáři, takže i zde použijeme přepínač -i

mv -i adresar1 adresar2

Můžeme i přesunout soubor, aby přepsal původní a zároveň udělat zálohu toho souboru – ten získá před názvem znak ~, a to pomocí přepínače -b (backup)

mv -b adresar1 adresar2

mkdir (make directory)

Pokud potřebujeme vytvořit adresář, použijeme příkaz mkdir – ten vytvoří adresář (pokud neexistuje). Můžeme vytvořit i více adresářů najednou

mkdir foto_chorvatsko foto_italie

Můžeme vytvořit i podadresáře v jednom příkazu pomocí přepínače -p (parent)

mkdir -p foto_italie/den1/oblibene

rm (remove)

Pro odstranění souborů použijeme příkaz rm. Ten slouží k odstranění souborů a adresářů.

rm soubor1

Při používání příkazu rm buďte opatrní – neexistuje žádný koš ze kterého byste odstraněné soubory získali. Jakmile jednou zmizí – zmizí navždy.

Některé soubory a adresáře chráněné proti zápisu si před ostraněním vyžádají potvrzení.

rm -f soubor1

Přepínače -f (force) říká rm, aby odstranil všechny soubory, i chráněné proti zápisu, bez dotazu uživatele.

rm -i soubor

Přidáním příznaku -i zobrazíme dotaz, zda opravdu chceme soubor odstranit.

rm -r adresar

Ve výchozím nastavení pouze s rm adresář nevymažeme. Musíme přidat příznak -r (rekurzivní), abychom odstranili všechny soubory a podadresáře, které může adresář mít

Adresář můžeme odstranit i příkazem rmdir (remove directory)

rm -r adresar

find

Se všemi soubory, které máme v systému, může být hledání souboru náročné. Na hledání nám slouží příkaz find

find /home -name profilovka.jpg

V příkazu zadáme adresář, který prohledáváme a co hledáme (v našem případě soubor profilovka.jpg).

Můžeme ale zadat i typ souboru, který se snažíme najít

find /home -depth -name maSlozka

Nastavil jsem přepínač -depth na adresář, který se jmenuje maSlozka.

Příkaz hledá dokud něco nenajde – i v podadresářích, které adresáře mají.


help, man, whatis

Linux má vestavěný nástroj, který nám pomůže s používáním příkazu nebo s výpisem přepínačů, které jsou pro příkaz k dispozici. Tento nástroj se jmenuje help – ten poskytuje nápovědu pro dálší příkazy bashe.

help pwd

Příkaz vypíše popis a možnost užití příkazu pwd.

Můžeme to použít i na opak – k příkazu dáme přepínač –help

pwd --help

Podobně fungují i příkazy man (manuál) a whatis (popis příkazu).


exit, logout

Pro opuštění shellu použijeme příkaz exit (východ)

exit

Odhlásit se můžeme pomocí příkazu logout (odhlášení)

logout

Prezentace

OPS4-Zakladni-prikazy

Autotest


Zdroje

Seznam zdrojů

ŠEDIVÝ, Libor. Operační systémy IV. ročník: Učební text. Městská střední odborná škola Klobouky u Brna, 2023.
ŠEDIVÝ, Libor. Operační systémy IV. ročník: Prezentace. Městská střední odborná škola Klobouky u Brna, 2023.
POMYKACZ, Ivan. Digitální učební materiály: Operační systémy – Linux. Vyšší odborná škola obalové techniky a Střední škola, Štětí, příspěvková organizace, 2013.
ABARIS, Augustine. Introduction to Linux. BOSTON UNIVERSITY, 2018.
Linux Journey. Online. 2024. Dostupné z: https://linuxjourney.com/.
Ibiblio catalog. The Linux Users‘ Guide. Dostupné z: https://www.ibiblio.org/
Učebnice ABC/Linuxu. Online. Abclinuxu, 2006. Dostupné také z: https://www.abclinuxu.cz/download/ucebnice_abc_linuxu-20061019.pdf.




Obsah
© 2025 Lukáš Pospíšil