Třetí cvičení – Hledání v manuálu (apropos), přesměrování, roury

Příkazy:


Opakování z minula:

  1. Vypište prvních 15 řádek ze souboru /etc/passwd a uložte je do souboru ve svém domovském adresáři
  2. Vypište ze souboru /etc/passwd řádky 15-20 (včetně) (pomocí pomocného souboru/pomocí roury)
  3. Spočítejte počet souborů v /etc/, které končí na .conf a začínají na jedno z písmen a, i, p

Cvičení:

  1. Vypište soubory v /etc/, které končí na .conf a mají v názvu slunicko
    • Přesměrujte standardní výstup do souboru /tmp/slunicko. Proč se na obrazovku stále něco vypisuje?
    • Zahoďte chybový výstup tohoto příkazu do černé díry v /dev/null
    • Umíte vypsat standardní výstup do konzole a současně do souboru? (zkuste hledat v manuálu "output and file")
  2. Vypište soubor (třeba .bashrc) reverzně (od posledního znaku posledního řádku) – nápověda: zkuste najít vhodný příkaz pomocí man -k
  3. Vypište pouze loginy a jména uživatelů (ze souboru /etc/passwd) Zkusíme si komunikaci mezi uživateli:
    • Přihlašte se vzdáleně na stejný strojy: ssh <login>@u2-0.ms.mff.cuni.cz
    • Zobrazte seznam přihlášených uživatelů pomocí who
    • Napište kamarádovi/sousedovi pomocí write
    • Zkuste to samé pomocí talk
  4. Na u2-0.ms.mff.cuni.cz vytvořte s /tmp/ složku se svým loginem. V ní vytvořte soubor readme s nějakým pozdravem a nastavte práva tak, aby soubor mohli číst i jiní uživatelé. Zkuste se podívat do složky někoho jiného a přečtěte si jeho soubor.
  5. Pokračování: Vytvořte ve své složce složku skryta a v ní soubor zprava s nějakým tajným textem. Nastavte práva tak, aby ostatní uživatelé nemohli vylistovat obsah složky, ale aby mohli zobrazit soubor zprava, když znají jeho cestu skryta/zprava. Ozkoušejte pak na složce jiných uživatelů.
  6. */?>

Příklady pro pokročilé:

  1. Vypište pouze jména uživatelů a jejich loginy (ze souboru /etc/passwd) v pořadí jméno a login (zkuste to pouze s použitím již probraných příkazů, awk ani sed ještě ne)
  2. [z 1. cvičení] Napište skript, který provede množinový průnik. Na vstupu dostane dva soubory a má vypsat právě ty řádky, které se vyskytují v obou souborech. Na pořadí nezáleží.
  3. [z 1. cvičení] Napište skript, který provede množinový rozdíl. Na vstupu dostane dva soubory a má vypsat právě ty řádky, které se vyskytují v prvním a nevyskytují ve druhém. Na pořadí záleží (musí být stejné jako v prvním souboru).
  4. vimtutor