Základní příkazy

„Pod Linuxem jsou GUI (grafická uživatelská rozhraní), kde můžete ukazovat, klikat a tahat, a s trochou štěstí uděláte vše aniž byste si předem museli přečíst spoustu dokumentace. Tradiční Unixové prostředí je CLI (rozhraní příkazové řádky), kde píšete příkazy abyste řekli počítači co má dělat. To je rychlejší a mocnější, ale vyžaduje hledání správných příkazů.“ – z man intro(1)

  • Tato stránka vás obeznámí se základními shellovými příkazy GNU/Linuxu.
  • Není zamýšlena jako kompletní průvodce příkazovou řádkou, jenom úvodem do doplňku grafických nástrojů v Ubuntu.
  • Všechny příkazy jsou vyznačeny tučně.
  • Příkazy, které je nutné napsat, jsou „tučně s uvozovkami“.
  • Všechny příkazy na této stránce se spouštějí z promptu v Terminálu (naučte se tedy nejdříve zacházet s Terminálem).
  • Pozor, všechny příkazy v Linuxu rozlišují velká a malá písmena. Uživatel, uživatel a UŽIVATEL jsou naprosto odlišné pro Linux.

Pro návod, jak spustit Terminál, a jeho základní ovládání si přečtěte stránku Terminál.\ Pokud chcete mít položku „Otevřít terminál“ v menu na pravém kliknutí myši, pomocí návodu na instalaci programů si nainstalujte nautilus-open-terminal.

sudo: spouštění příkazů se zvýšenými oprávněními

  • Většině následujících příkazů musí předcházet slovo sudo, pokud pracujete s adresáři nebo soubory, které nejsou ve vašem vlastnictví (většinou všechny soubory mimo váš domovský adresář). Podívejte se na stránku Root sudo pro informace týkající se sudo.

Příkazy pro práci se soubory a adresáři

  • pwd: Příkaz pwd („print working directory“ - vypiš pracovní adresář) vám oznámí, ve kterém adresáři se právě nacházíte.\ Příklad: „pwd“ v adresáři Desktop (obsah vaší plochy) ukáže „~/Desktop“. Všimněte si, že Terminál ukazuje tuto informaci taktéž v titulku jeho okna - viz ukázkový obrázek na začátku této stránky.
  • cd: Příkaz cd („change directory“ - změn adresář) vám umožní změnit aktuální pracovní adresář. Když otevřete Terminál, budete ve svém domovském adresáři. Pro pohyb po systému souborů slouží příkaz cd.\ Příklad: „cd ~/Desktop“ vás přesune do adresáře s vaší plochou.
  • Pro přesun do kořenového adresáře, použijte „cd /„
  • Pro přesun do vašeho domovského adresáře, použijte „cd“
  • Pro přesun do nadřazeného adresáře (o 1 úroveň výše), použijte „cd ..“
  • Pro přesun do minulého adresáře (posledního před současným), použijte „cd -„
  • Pro přesun přes více adresářů naráz, vypište plnou cestu. Například „cd /var/www“ vás přesune skrz adresář /var do jeho podadresáře www.
  • cp: Příkaz cp („copy“ - kopíruj) vytvoří kopii zadaného souboru.\ Příklad: „cp dokument kopie“ udělá přesnou kopii souboru „dokument“ a pojmenuje ho „kopie“; soubor „dokument“ bude stále na svém místě. Když použijete mv tak původní soubor nebude nadále existovat, když použijete cp tak původní soubor zůstává a vytvořena je nová kopie.
  • mv: Příkaz mv („move“ - přesuň) přesune soubor do jiného umístění nebo soubor přejmenuje. Pokud je jako druhý argument uveden název souboru, soubor se přejmenovává. Pokud je jako druhý argument uveden název adresáře, soubor se přesouvá.\ Příklad 1: „mv podzim zima“ přejmenuje soubor „podzim“ na „zima“.\ Příklad 2: „mv fotka ~/Desktop“ přesune soubor „fotka“ do vašeho adresáře Desktop (vaše pracovní plocha) ale nijak ho nepřejmenuje.
  • rm: Příkaz rm (remove - odstranit) odstraní zadaný soubor. Nebude fungovat na neprázdných adresářích. rm -r smaže rekurzivně všechny soubory i adresáře v daném adresáři a nakonec samotný adresář.
  • ls: Příkaz ls (list - seznam) vám ukáže seznam souborů ve vašem aktuálním adresáři. Za použití určitých parametrů můžete vidět i velikosti souborů, časy vytvoření souborů a práva souborů.\ Příklad: „ls ~„ vám ukáže soubory obsažené ve vašem domovském adresáři. Příklad: „ls -l“ vypíše soubory i s přístupovými právy
  • find: vyhledává soubory rekurzivně, vyhledání souboru petroviny.txt a podobných hledání začne v nejvyšší úrovni a bez rozlišení velikosti písmen: „find / -iname „*petr*“ „
  • locate: vyhledávání pomocí indexového souboru, rychlejší než předchozí. „locate -i petr „
  • which: vyhledá umístění souboru, kde se konkrétní program nachází. Nalezení umístění programu swat:„which swat „.
  • whereis: narozdíl od předchozího neskončí při prvním nálezu
  • cat: vypíše obsah souboru: „cat /etc/samba/smb.conf „.
  • less: řízení výstupu, vypíše obsah souboru po stránkách, nic nám neuteče: „cat /etc/samba/smb.conf | less „. Samozřejmě jde použít i v kombinaci s jinými příkazy, které něco vypisují. Pokud jej napíšeme za nějaký jiný příkaz, je výstup z toho příkazu přesměrován do příkazu less a ten nám jej předá po jednotlivých stránkách. Přerušení výpisu provedeme stiskem „q“.
  • head: vypíše začátek souboru: „head /etc/samba/smb.conf „.
  • tail: vypíše konec souboru: „tail /etc/samba/smb.conf „.
  • sort: výpis setříděného souboru, původní soubor je nezměněn.
  • diff: porovnání dvou souborů a výpis rozdílů, řádek po řádku, “ diff –help „, vypíše český help k souboru
  • chmod: změna, nastavení přístupových práv. To je na samostatnou kapitolu.
  • man: Příkaz man (manual - návod) vám ukáže manuál (návod) zvoleného příkazu. Zkuste „man man“ na získání manuálové stránky pro samotný příkaz man. Podívejte se na sekci „Man a získávání pomoci“ níže na této stránce pro více informací.\ Příklad:„man cd“ vám ukáže návod pro používání příkazu cd.
  • mkdir: Příkaz mkdir (make dir - vytvoř adresář) vám vytvoří nový adresář zadaného jména.\ Příklad: „mkdir hudba“ vytvoří adresář hudba v aktuálním adresáři.
  • rmdir: Vymaže adresář. Lze vymazat pouze prázdný adresář. příkaz rm -r smaže rekurzivně všechny soubory i adresáře v daném adresáři a nakonec samotný adresář. Pozor, ať nenaděláte více škody než užitku!
  • fuser: Zjištění, kdo se souborem pracuje, fuser jméno_souboru.

Abyste nemuseli tolik psát, můžete adresu svého domovského adresáře nahradit znakem '~' (vlnovka).\ Poznámka: Pokud používáte příkazy se sudo, nebudete moci používat zkratku ~, ale budete muset vypisovat plnou cestu k vašim souborům.

Příkazy pro získávání systémových informací

  • df: Příkaz df („disk free“ - volné místo na disku) zobrazí využití místa na systému souborů pro všechny oddíly. „df -h“ je pravděpodobněji nejužitečnější - zobrazuje megabajty (M) a gigabajty (G) místo počtu bloků. (-h znamená „human-readable“ - lidsky čitelný)
  • free: Příkaz free („free“ - volný) ukazuje množství volné a použité paměti v systému. „free -m“ vám dá informace v megabytech, což je asi nejužitečnější pro dnešní počítače.

*cat /proc/meminfo: vypíše obsazení paměti procesy.

  • top: Příkaz top („top“ - vršek, špička) zobrazuje informace o linuxovém systému, bežící procesy a systémové prostředky, včetně CPU, RAM & swap a počet právě běžících úkolů. Pro skončení příkazu top stiskněte „q“.
  • uname -a: Příkaz uname s parametrem -a vypíše všechny informace o systému, včetně jména počítače, jména jádra (kernelu) a jeho verze, a několik dalších detailů. Užitečné pokud chcete zjistit, jaké jádro v počítači používáte.
  • lsb_release -a: Příkaz lsb_release s parametrem -a vypíše informace o vydání Linuxu, který právě používáte (informace o vaší distribuci). Například:
user@computer:~$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 6.06 LTS
Release:        6.06
Codename:       dapper
  • ifconfig: Příkaz ifconfig vás informuje o síťových rozhraních ve vašem systému, v současné době zastaralý, použijte ip.
  • ip address show vás informuje o síťových rozhraních ve vašem systému, nahrazuje ifconfig.
  • iwconfig: Příkaz iwconfig vám ukáže údaje o bezdrátových zařízeních ve vašem počítači.
  • lspci: vypíše informace o „všech“ PCI zařízeních.
  • lsusb: vypíše informace o „všech připojených“ USB zařízeních.
  • cal: vypíše kalendář pro daný měsíc a rok např. pro duben 2007: „cal 4 2007“, přičemž týden začíná nedělí. Pokud chcete, aby v kalendáři týden začínal pondělím, napište: „cal -m 12 2007“. Vynecháte-li číslo „12“, uvidíte kalendář na celý rok 2007: „cal -m 2007“. A nejen to: jestliže chcete zobrazit třeba květen v roce 2013, stačí zadat: „cal -m 5 2013“. Opravdu jednoduché a efektivní. :)
  • hostname: vypíše jméno počítače.
  • top: výpis procesů, obsazení paměti, průběžně aktualizovaný, ukončení „q“.
  • ps: výpis procesů. Sloupce, pid číslo procesu, identifikace terminálu, na kterém běží, využití procesorového času, jméno procesu. Zobrazení všech procesů „ps -A“.
  • kill: ukončení procesu, např. když nereaguje. Používejte jen když přesně víte co děláte!
  • set: výpis systémových proměnných. Lépe bude „set | less“ ať vám nic neuteče.
  • echo: vypíše konkrétní systémovou proměnnou. Název proměnné musí začínat $: „echo $USERNAME“.
  • export: vytvoření nebo úprava systémové proměnné. Musíte vědět, co děláte!
  • script: zadáním „script mujzaznam.txt“ se začnou do souboru se jménem mujzaznam.txt zaznamenávat všechny příkazy zadané z příkazového řádku a zároveň i odezvy systému. Zaznamenávání ukončíme stiskem Ctrl+D.

Práce s uživatelskými účty a skupinami

Uživatelé

  • adduser: Vytvoří nového obecného uživatele ve vašem systému.

např. adduser franta

  • useradd: Obdoba předchozího s drobnými modifikacemi parametrů.
  • userdel: Vymaže uživatele.
  • usermod: Změní členství ve skupinách.
  • passwd: Nastaví heslo pro účet uživatele.

např. passwd franta

  • users: Vypíše přihlášené uživatele.
  • w: Vypíše přihlášené uživatele a doplňující informace. Označení terminálů, čas přihlášení, jak dlouho běží terminál naprázdno, spotřebovaný čas procesoru během sezení a aktuálně běžící aplikace.
  • finger: Vypíše přihlášené uživatele a doplňující informace. Jméno, úplné jméno, kdy naposled něco udělal, kdy se přihlásil.
  • cut -f1 -d: /etc/passwd |sort: Vypíše všechny uživatele v systému.

skupiny

  • addgroup: Vytvoří skupinu.
  • groupadd: Obdoba předchozího s drobnými modifikacemi.
  • groupdel: Vymaže skupinu.
  • groupmod: Přejmenování skupiny.
  • gpasswd: Nastavení hesla skupiny.
  • groups: Vypíše skupiny, ve kterých je uživatel zařazen.
  • newgrp: Oznámí systému přihlášení se do nové skupiny.
  • grep SKUPINA /etc/group: Vypíše, kdo je v zadané skupině.

Výchozí chování příkazů může být většinou modifikováno pomocí přidání -parametr k příkazu. Například příkaz ls má možnost přidání parametru -s, takže příkaz „ls -s“ vypíše v seznamu souborů i jejich velikost. Také je zde parametr -h, který vypisuje tyto velikost v „human readable“ (lidsky čitelném) formátu.

Parametry mohou být sloučeny do skupin, takže příkaz „ls -sh“ je úplně to samé jako příkaz „ls -s -h“. K většině parametrů existuje i jejich slovní verze, která se předepisuje dvěma pomlčkami místo jedné. Takže i „ls –size –human-readable“ je pořád jeden a ten samý příkaz.

:!: příkaz –help“ a „man příkaz jsou dva nejdůležitější nástroje příkazové řádky.

Téměř všechny příkazy rozumějí parametru -h (nebo –help), který vám vypíše krátký popis použití daného příkazu a jeho dostupné parametry. Zkuste „man -h“ nebo „man –help“ pro názornou ukázku.

Každý příkaz a téměř každá aplikace v Linuxu má svoji vlastní man (manuálovou) stránku. Zobrazíte ji jednoduše napsáním příkazu „man příkaz“. Man stránka vám zobrazí kompletní popis příkazu a je většinou mnohem podrobnější než při použití parametru –help. Například zkuste „man mv“, což vám vypíše manuál pro příkaz mv (move).

Pro pohyb v manuálové stránce použijte šipky nahoru a dolů, ukončete prohlížení stisknutím „q“.

V manové stránce můžete vyhledávat stisknutím “/„ a zadáním hledaného slova. Stisknutím „n“ přejdete na další výskyt, stisknutím „N“ na výskyt předchozí.

Příkaz „man man“ vám vypíše manuál pro příkaz man, což je dobré místo pro začátek!

Příkaz „man intro“ je obzvláště užitečný - zobrazuje „Úvod do uživatelských příkazů“, který je dobře napsaným a nepříliš obsáhlým úvodem do linuxové příkazové řádky.

Také existují info stránky, které jsou obecně více zaměřené do hloubi než man stránky. Zkuste „info info“ pro úvod do info stránek.

Hledání manuálových stránek

Pokud si nejste jistí, který příkaz nebo program použít, můžete zkusit hledat manové stránky.

  • man -k slovo najde všechny man stránky, v jejich popisku je slovo slovo. Zkuste například „man -k calculator“ pro ukázku, jak to funguje.
    • Poznámka: Místo man -k můžete použít příkaz apropos, pokud se vám bude lépe pamatovat. Dělá to samé.
  • man -f slovo prohledává jen titulky systémových manových stránek. Zkuste „man -f gnome“, například.
    • Poznámka: Místo man -f můžete použít příkaz whatis, dělá totéž.

Pro detailnější tutoriály o Linuxové příkazové řádce, navštivte: