D RAFT D RAFT D RAFT D RAFT Petr Kulhánek kulhanek@chemi.muni.cz Národní centrum pro výzkum biomolekul, Masarykova univerzita, Kotlářská 2, CZ-61137 Brno C2110 Operační systém UNIX a základy programování, podzim 2008 - 1 Úvod do Linuxu ObsahObsah C2110 Operační systém UNIX a základy programování, podzim 2008 - 2 - Klastr WOLF struktura, pravidla používání, správci Přihlašování místní a vzdálené přihlášení, export displeje, změna hesla Programové vybavení systémové aplikace, vědeckotechnické aplikace Textové editory vi, grafické textové editory Příkazová řádka terminály, struktura, historie a automatické dokončování Souborový systém struktura, absolutní a relativní cesty, práva, speciální soubory, diskové oddíly Příkazy manuálové stránky, přehled příkazů Procesy procesy, standardní vstup a výstup, přesměrování, roury Tipy a triky užitečné kombinace příkazů C2110 Operační systém UNIX a základy programování, podzim 2008 - 3 Klastr WOLF Struktura klastru Pravidla používání klastru Správci klastru Struktura klastru WOLFStruktura klastru WOLF C2110 Operační systém UNIX a základy programování, podzim 2008 - 4 univerzitní síť místní síť wolfn.wolf.netwolfn.chemi.muni.cz wolfn switch wolf03 wolf04 wolf05wolf02wolf01 wolf06 wolf07 wolf08 wolf19 server pracovní stanice (výpočetní uzly) veřejně nedostupná doména: wolf.net Operační systém: CentOS 5 http://www.centos.org/ Pravidla používáníPravidla používání C2110 Operační systém UNIX a základy programování, podzim 2008 - 5 Klastr WOLF je určen výhradně pro účely výuky či pro vědeckou práci v rámci Národního centra pro výzkum biomolekul. Klastr WOLF Je vysloveně zakázáno používat pro: stahování nelegálního obsahu (autorsky chráněná díla apod.) rozesílání virů, spamů, nevyžádané pošty a podobných materiálů prolomení ochrany jiných počítačů čtení, mazaní či změnu nechráněného obsahu souborů jiných uživatelů Dodržují se pravidla užívání počítačové sítě Masarykovy univerzity: https://is.muni.cz/auth/do/1499/normy/smernicerektora/Smernice_rektora_2-2003.pdf Správci klastruSprávci klastru C2110 Operační systém UNIX a základy programování, podzim 2008 - 6 Hlavní správce klastru WOLF: Petr Padrta (padrta@chemi.muni.cz) zakládání nových účtů změna zapomenutých hesel správa hardware správa systému a systémových aplikací Správce aplikací pro vědecko-technické výpočty (moduly): Petr Kulhánek (kulhanek@chemi.muni.cz) Než kontaktujete správce, prodiskutujte svůj problém s vaším kolegou či vyučujícím nebo školitelem. C2110 Operační systém UNIX a základy programování, podzim 2008 - 7 - Přihlašování Místní přihlášení Vzdálené přihlášení Export displeje Přihlašování z a do systému MS Windows Změna hesla Místní přihlášeníMístní přihlášení C2110 Operační systém UNIX a základy programování, podzim 2008 - 8 Místní terminály: šest textových terminálů (F1 ... F6) jeden grafický terminál (F7) přepínání pomocí kláves Ctrl+Alt+F1 ... Ctrl+Alt+F7 Přihlášení: nutno zadat přihlašovací jméno (login) a heslo (password) Přihlašovací jméno a heslo tvoří identitu uživatele a proto ji zásadně nesdělujeme třetím osobám, neukládáme či zasíláme (např. e-mailem) v nešifrované formě! Operační systém Linux je velmi flexibilní a umožňuje i jiné způsoby místního přihlášení, např. pomocí identifikačních karet či kryptografických klíčů. Více lze nalézt v nápovědě systému PAM (Pluggable Authentication Modules). $ man 8 pam Místní přihlášeníMístní přihlášení C2110 Operační systém UNIX a základy programování, podzim 2008 - 9 Textový terminál (F1-F6): zpřístupňuje příkazovou řádku (CLI ­ command line interface) grafické aplikace (X11) lze spouštět jen s exportem displeje na vzdálený grafický terminál odhlášení příkazem exit Grafický terminál (F7): spouští X11 server a v něm okenního správce (KDE, GNOME, atd.) okenního správce (WM ­ window manager) lze zvolit před vlastním přihlášením umožňuje přímé spouštění grafických programů (GUI ­ graphical user interface) příkazová řádka je dostupná pomocí speciálních aplikací xterm konsole odhlášení pomocí nabídky v menu okenního správce Místní přihlášeníMístní přihlášení C2110 Operační systém UNIX a základy programování, podzim 2008 - 10 Grafický terminál (F7): výběr okeního manažeru KDEKDE C2110 Operační systém UNIX a základy programování, podzim 2008 - 11 - GNOMEGNOME C2110 Operační systém UNIX a základy programování, podzim 2008 - 12 - Vzdálené přihlášeníVzdálené přihlášení C2110 Operační systém UNIX a základy programování, podzim 2008 - 13 Existuje několik možností vzdáleného přihlášení (rsh, XDMCP, apod.) avšak nejpoužívanějším a nejbezpečnějším je použití příkazu ssh (secure shell). $ ssh [user@]hostname [command] Příklady použití: Syntaxe: jméno uživatele; pokud není uvedeno, použije se jméno přihlášeného uživatele jméno počítače příkaz, který se má vykonat; pokud není uveden, zpřístupní se příkazová řádka [] - možno vynechat $ ssh wolfn.wolf.net Vzdálené přihlášeníVzdálené přihlášení C2110 Operační systém UNIX a základy programování, podzim 2008 - 14 - wolfn wolf03 wolf04 wolf05wolf02wolf01 wolf06 wolf07 wolf08 wolf19 Pomocí příkazu ssh je možné provést vnořené vzdálené přihlášení. ssh wolf06ssh wolfn ssh wolf02 S každou novou úrovní vzdáleného příhlášení roste režie, proto, pokud je to možné, použijeme nejpřímější vzdálené přihlášení. ssh wolf02 Vzdálené přihlášeníVzdálené přihlášení C2110 Operační systém UNIX a základy programování, podzim 2008 - 15 univerzitní síť místní síť wolfn.wolf.netwolfn.chemi.muni.cz wolfn wolf03 wolf04 wolf05wolf02wolf01 wolf06 wolf07 wolf08 wolf19 veřejně nedostupná doména: wolf.net skirit.ics.muni.cz Vnořené vzdálené přihlášení je nutné použít pro přístup k počítačům v místních neveřejných sítích. ssh wolf08.wolf.net ssh wolfn.chemi.muni.cz ssh wolf07 Vzdálené přihlášeníVzdálené přihlášení C2110 Operační systém UNIX a základy programování, podzim 2008 - 16 univerzitní síť místní síť wolfn.wolf.netwolfn.chemi.muni.cz wolfn wolf03 wolf04 wolf05wolf02wolf01 wolf06 wolf07 wolf08 wolf19 veřejně nedostupná doména: wolf.net skirit.ics.muni.cz Vnořené vzdálené přihlášení je nutné použít pro přístup k počítačům v místních sítích. ssh skirit.ics.muni.cz Export displejeExport displeje C2110 Operační systém UNIX a základy programování, podzim 2008 - 17 Grafické aplikace je možné spouštět přímo v prostředí X11 (grafickém terminálu) nebo s exportem displeje na vzdálenou plochu prostředí X11. Přímé spouštení Export displeje aplikace wolf01 aplikace wolf01 aplikace wolf01 wolf02 Export displejeExport displeje C2110 Operační systém UNIX a základy programování, podzim 2008 - 18 - aplikace wolf01 wolf02 [wolf01] $ xhost wolf02.wolf.net [wolf02] $ export DISPLAY=wolf01.wolf.net:0.0 [wolf02] $ ./my_application povolí používat místní X server ze stroje wolf02 kam se má displej exportovat číslo obrazovky číslo desktopu Pokud se na stroj wolf02 přihlašujeme ze stroje wolf01 pomocí příkazu ssh, celá procedura proběhne automaticky při použití volby -X. [wolf01] $ ssh -X wolf02 [wolf02] $ ./my_application MS WindowsMS Windows C2110 Operační systém UNIX a základy programování, podzim 2008 - 19 Přihlašování do Linuxu z MS Windows (textový terminál): putty (http://www.chiark.greenend.org.uk/~sgtatham/putty/) ssh (např. z prostředí Cygwin; http://www.cygwin.com/) Export displeje z Linuxu do MS Windows (X11 server): Xming (http://sourceforge.net/projects/xming/) cygwin (http://www.cygwin.com/) celá řada komerčních řešení Přihlašování z Linuxu do MS Windows (vzdálená plocha): rdesktop Změna heslaZměna hesla C2110 Operační systém UNIX a základy programování, podzim 2008 - 20 - Heslo se mění po přihlášení do systému z příkazové řádky pomocí příkazu passwd. Po jeho spuštění jste dotázaní na současné platné heslo a poté na heslo nové. Nové heslo se je nutné zadat dvarát, aby se omezily možné překlepy. Změna se projeví na všech počítačích klastru WOLF. Heslo by mělo být dostatečně silné. Mělo by obsahovat kombinaci písmen (malých a velkých), číslic a speciálních znaků. Při zadávání hesla nepoužíváme numerickou část klávesnice, speciální klávesy a přemykače kromě klávesy Shift. Vyvarujete se tak problémům se zadáváním hesla na jiných počítačích. Nebezpečné trojhmatyNebezpečné trojhmaty C2110 Operační systém UNIX a základy programování, podzim 2008 - 21 - Ctrl + Alt + Del (odhlásí uživatele nebo provede měkký restart počítače) Ctrl + Alt + Backspace (provede tvrdý reset X serveru) C2110 Operační systém UNIX a základy programování, podzim 2008 - 22 Programové vybavení Systémové aplikace Vědecko-technické aplikace (moduly) Systémové aplikaceSystémové aplikace C2110 Operační systém UNIX a základy programování, podzim 2008 - 23 Aplikace dostupné v menu okenního manažeru. Aplikace lze spouštet i z příkazové řádky. Vědecko-technické aplikaceVědecko-technické aplikace C2110 Operační systém UNIX a základy programování, podzim 2008 - 24 Přehled dostupných aplikaci: $ module $ module versions amber Přehled dostupných verzí aplikace: Aktivace aplikace: $ module add amber Vědeckotechnické aplikace, které jsou instalovány v několika verzích (verze aplikace, typ kompilace, paralelní verze), jsou dostupné ve formě modulů. Před použitím aplikace je nutné příslušný modul aktivovat. Spustění aplikace z modulu amberu: $ xlaep C2110 Operační systém UNIX a základy programování, podzim 2008 - 25 Textové editory vi (vim) grafické textové editory (kwrite, kate, gedit, emacs, nedit atd.) vivi C2110 Operační systém UNIX a základy programování, podzim 2008 - 26 Standardní textový editor v operačních systémech UNIXového typu. Pracuje pouze v textovém módu a jeho použivání je netriviální. Je vhodné se naučit, jak otevřít soubor, přejít do editačního módu, upravovat text, uložit provedené změny a editor ukončit. Dokumentace: manuálové stránky (man vi) přiložený přehled příkazů vi - základyvi - základy C2110 Operační systém UNIX a základy programování, podzim 2008 - 27 Pracovní módy editoru rozšířený příkazový mód příkazový mód vkládací mód EscEnter a, c, i, o, s, A, C, I, O, R, S: Změny souboru i text bude vkládán od pozice kurzoru a text bude vkládán za pozici kurzoru Spuštění editoru Ukončení editoru vi start editoru vi filename start editoru a otevření souboru filename :q ukončení editoru :q! ukončení editoru bez uložení změn :w uložení souboru :w filename uložení souboru po jménem filename :wq ukončení s uložením souboru kwritekwrite C2110 Operační systém UNIX a základy programování, podzim 2008 - 28 - katekate C2110 Operační systém UNIX a základy programování, podzim 2008 - 29 - geditgedit C2110 Operační systém UNIX a základy programování, podzim 2008 - 30 - C2110 Operační systém UNIX a základy programování, podzim 2008 - 31 Příkazová řádka Terminály Struktura příkazové řádky Historie a automatické doplňování TerminályTerminály C2110 Operační systém UNIX a základy programování, podzim 2008 - 32 Příkazová řádka je přístupná přímo z textových terminálů. V grafickém prostředí X11 je nutné spustit vhodnou aplikaci emulující textový terminál. xterm konsole jednoduché, standard na všech UNIXových systémech jednoduché přitom značně konfigurovatelné, dostupné v prostředí KDE Struktura příkazové řádkyStruktura příkazové řádky C2110 Operační systém UNIX a základy programování, podzim 2008 - 33 [kulhanek@wolfn ~] $ jméno uživatele jméno počítače aktuální adresář typ uživatele ($ běžný uživatel, # superuživatel) místo pro příkaz Příkaz se vykoná zmáčknutím klávesy Enter. Na příkazové řádce lze uvést několik příkazů, je však nutné je oddělit znakem ;. [kulhanek@wolfn ~]$ echo "jedna"; echo "dve"; echo "tri" jedna dve tri [kulhanek@wolfn ~]$ Formát příkazové řádky lze změnit, viz. man bash (kapitola PROMPTING). Historie a doplňováníHistorie a doplňování C2110 Operační systém UNIX a základy programování, podzim 2008 - 34 Historie: pomocí kurzorových šipek nahoru a dolů lze procházet seznamem již zadaných příkazů. Příkaz z historie lze znovu použít nebo upravit a upravený použít. Automatické doplňování: zmáčknutím klávesy Tab (tabulátor) se interpret příkazové řádky snaží dokončit rozepsané slovo. Doplňují se jména příkazů, cesty a jména souborů ... C2110 Operační systém UNIX a základy programování, podzim 2008 - 35 Souborový systém Struktura souborového systému Absolutní a relativní cesty Přístupová práva Speciální soubory Diskové oddíly a souborový systém StrukturaStruktura C2110 Operační systém UNIX a základy programování, podzim 2008 - 36 Linux (jako UNIXový operační systém) využívá hiearchický adresářový souborový systém složený z adresářů a souborů. Všechny adresáře a soubory leží v jediném kořenovém adresáři. Srovnání s MS Windows: jednotlivé diskové oddíly (C:, D: apod.) jsou připojeny jako podadresáře CD-ROM a jiné zařízení (USB disky) se opět připojují jako podadresáře Domovský adresář: adresář sloužící pro data a nastavení uživatele obvykle v cestě /home/jmeno_uzivatele (k určení cesty je však lepší používat tildu ~, viz. absolutní cesty) CestyCesty C2110 Operační systém UNIX a základy programování, podzim 2008 - 37 - /home/kulhanek/Documents /home/kulhanek/Documents/domaci_ukol.txt ~/Documents /home/kulhanek/Documents ~alois/Documents /home/alois/Documents Absolutní cesta je vždy uvedena vzhledem ke kořenovému nebo k domovskému adresáři. Musí tedy začínat buď lomítkem / nebo tildou ~. Cesta k adresáři nebo souboru může být uvedena jako absolutní nebo relativní. Jména adresářů a souborů se oddělují lomítkem /. Příklady absolutních cest: ~ domovský adresář přihlášeného uživatele ~user_name domovský adresář uživatele user_name Použití tildy: CestyCesty C2110 Operační systém UNIX a základy programování, podzim 2008 - 38 - Documents/domaci_ukol.txt ../alois/Documents ./muj_script Příklady relativních cest: Relativní cesta je cesta uvedená k aktuálnímu pracovnímu adresáři. (Absolutní cestu k pracovnímu adresáři lze získat příkazem pwd.) Speciální jména adresářů: . (tečka) aktuální adresář (nemá žádnou spojitost s pracovním adresářem) .. (dvě tečky) rodičovský adresář Přístupová právaPřístupová práva C2110 Operační systém UNIX a základy programování, podzim 2008 - 39 Přístupová práva určují jaké operace může uživatel provádět se soubory či adresáři v souborovém systému. Přístupová práva: r možnost číst soubor vypsat obsah adresáře w možnost měnit soubor změnit obsah adresáře x možnost spuštění souboru možnost vstoupit do adresáře Každý soubor či adresář má určeného vlastníka a skupinu. Přístupová práva se uvádějí zvlášť pro vlastníka souboru, pro skupinu a ostatní uživatele. $ ls -l drwxrwxr-x 3 kulhanek lcc 4096 2008-10-13 09:57 bin/ drwx------ 2 kulhanek lcc 4096 2008-10-13 09:58 Desktop/ -rw-rw-r-- 1 kulhanek lcc 5858 2008-10-17 11:58 distance.cpp jméno souboru či adresáře/ vlastník a skupina velikost čas poslední změny přístupová práva Speciální souborySpeciální soubory C2110 Operační systém UNIX a základy programování, podzim 2008 - 40 Některé soubory v souborovém systému mají speciální charakter. Jedná se například o přístupové body k hardware počítače (obsah adresáře /dev). Nekteré soubory obsahují informace o aktuálním stavu operačního systému (obsah adresáře /proc) a podobně. Užitečné speciální soubory: /dev/null soubor poskytuje prázdný obsah, veškery obsah do něj zapsaný je okamžitě odstraněn vhodný pro přesměrování nechtěného standarního vstupu či výstupu /proc/cpuinfo informace o dostupných procesorech $ cat /proc/cpuinfo $ ls 2> /dev/null Příklad použití: Diskové oddílyDiskové oddíly C2110 Operační systém UNIX a základy programování, podzim 2008 - 41 - C2110 Operační systém UNIX a základy programování, podzim 2008 - 42 - Příkazy Manuálové stránky Přehled příkazů Příkazy - nápovědaPříkazy - nápověda C2110 Operační systém UNIX a základy programování, podzim 2008 - 43 Manuálové stránky (aneb co dělat, když si nevím rady): man vypíše manuálovou stránku příkazu $ man [section_number] topic Dostupné sekce: Section 1 user commands Section 2 system calls Section 3 library functions Section 4 special files Section 5 file formats jméno příkazu, funkce, tématu, kapitoly apod. Číslo sekce je nutné udávat u témat se stejným jménem zařazených do různých sekcí. Section 6 games Section 7 conventions and miscellany Section 8 administration and privileged commands Section L math library functions Section N tcl functions $ man 1 printf $ man 3 printf manuálová stránka příkazu printf manuálová stránka funkce printf() jazyka C Příkazy - nápovědaPříkazy - nápověda C2110 Operační systém UNIX a základy programování, podzim 2008 - 44 Navigace v textu nápovědy: posun v textu po řádcích (kurzorové šipky nahoru a dolů nebo klávesy j a k) posun v textu po stránkách (PgDn a PgUp nebo klávesy f a b) vyhledávání ( /hledaný_text , klávesa n pro další vyhledávání ) zavření nápovědy (klávesa q) On-line manuálové stránky ve formátu HTML: http://linux.die.net/man/ Příkazy - přehledPříkazy - přehled C2110 Operační systém UNIX a základy programování, podzim 2008 - 45 Zjištovací příkazy: uname vypíše informace o systému date vypíše aktuální čas a datum hostname vypíše jméno počítače who vypíše, kdo je přihlášen do systému id vypíše identifikační čísla uživatele whoami vypíše jméno přihlášeného uživatele Různé: echo vypíše text printf vypíše formátovaný text type vypíše cestu k příkazu read načte text ze standardního vstupu a uloží do proměnné dirname vyextrahuje jméno adresáře z úplného jména souboru basename vyextrahuje jméno souboru z úplného jména souboru Příkazy - přehledPříkazy - přehled C2110 Operační systém UNIX a základy programování, podzim 2008 - 46 Manipulace s textovými soubory: cat vypíše obsah souboru more vypíše obsah souboru po stránkách paste spojí obsah více souborů do jednoho (vedle sebe) cut vypíše zvolený sloupec ze souboru tr transformace souboru wc informace o souboru (počet řádků, slov a znaků) grep vypíše řádky ze souboru obsahující klíčové slovo head vypíše úvodní část souboru tail vypíše koncovou část souboru sed neinteraktivní editor sort setřídí obsah souboru awk interpret jazyka pro manipulaci s textovými soubory Příkazy - přehledPříkazy - přehled C2110 Operační systém UNIX a základy programování, podzim 2008 - 47 Souborový systém: pwd vypíše cestu aktuálního pracovního adresáře cd změní aktuální pracovní adresář mkdir vytvoří adresář rmdir odstraní adresář ls vypíše obsah adresáře du vypíše velikost adresáře cp zkopíruje soubor či adresář mv přesune soubor či adresář rm odstraní soubor či adresář stat vypíše informace o souboru či adresáři find nalezne soubor df vypíše informace o připojených diskových oddílech Příkazy - přehledPříkazy - přehled C2110 Operační systém UNIX a základy programování, podzim 2008 - 48 - Procesy: top informace o běžících procesech v systému ps vypíše informace o běžících procesech v systému kill zašle signál procesu nohup spustí process bez interakce s terminálem time vypíše délku běhu procesu wait čeká na dokončení procesů na pozadí ssh spustí příkaz na vzdáleném počítači C2110 Operační systém UNIX a základy programování, podzim 2008 - 49 - Procesy Procesy, multiprocesing, procesory Komunikace s procesy Přesměrování Roury ProcesyProcesy C2110 Operační systém UNIX a základy programování, podzim 2008 - 50 - Komunikace s procesyKomunikace s procesy C2110 Operační systém UNIX a základy programování, podzim 2008 - 51 - Standardní proudyStandardní proudy C2110 Operační systém UNIX a základy programování, podzim 2008 - 52 - process (příkaz, program) standardní vstupní proud (klávesnice) standardní výstupní proud (obrazovka terminálu) standardní výstupní chybový proud (obrazovka terminálu) Vstupně-výstupní proudy slouží procesu ke komunikaci se svým okolím. Každý proces otevírá tři standardní proudy: PřesměrováníPřesměrování C2110 Operační systém UNIX a základy programování, podzim 2008 - 53 - process (příkaz, program) standardní vstupní proud (klávesnice) standardní výstupní proud (obrazovka terminálu) standardní výstupní chybový proud (obrazovka terminálu) Vstupně-výstupní proudy lze přesměrovat tak, aby používaly soubory místo klávesnice či obrazovky. Přesměrování vstupuPřesměrování vstupu C2110 Operační systém UNIX a základy programování, podzim 2008 - 54 Přesměrování standardního vstupu programu my_command ze souboru input.txt. $ my_command < input.txt Přesměrování standardního vstupu programu my_command ze souboru skriptu. ....... ./my_command << EOF prvni radka textu druha radka textu treti radka textu EOF ...... značka určující konec vstupu (volí uživatel) konec vstupu, značku nesmí obklopovat mezery text, který tvorí načítaný vstup Tento způsob přesměrování je obzvláště výhodné používat ve skriptech, nicméně funguje i v příkazové řádce. Výhodou je expanze proměnných v načítaném textu. Přesměrování výstupuPřesměrování výstupu C2110 Operační systém UNIX a základy programování, podzim 2008 - 55 Přesměrování standardního výstupu programu my_command do souboru output.txt. (Soubor output.txt je vytvořen. Pokud již existuje, je jeho původní obsah smazán.) $ my_command > output.txt Přesměrování standardního výstupu programu my_command do souboru output.txt. (Soubor output.txt je vytvořen. Pokud již existuje, je výstup programu my_command připojen na jeho konec.) $ my_command >> output.txt Podobná pravidla platí pro standardní chybový výstup, v tomto případě se používají nasledující operátory: $ my_command 2> errors.txt $ my_command 2>> errors.txt Spojování výstupních proudůSpojování výstupních proudů C2110 Operační systém UNIX a základy programování, podzim 2008 - 56 Standardní výstup a standardní chybový výstup programu my_command lze současně přesměrovat do souboru output.txt. $ my_command &> output.txt Výše uvedený postup nelze použít pro operátor >>. $ my_command &>> output.txt nefunguje Řešení: Nejdříve je nutné přesměrovat standardní výstup a poté spojit standardní chybový výstup s výstupem standardním. $ my_command >> output.txt 2>&1 $ my_command 2>&1 >> output.txt nefunguje pořadí je důležité! Roury (pípy)Roury (pípy) C2110 Operační systém UNIX a základy programování, podzim 2008 - 57 Roury slouží ke spojování standardního výstupu jednoho procesu se standardním vstupem jiného procesu. process 1 process 2 vstup výstup | vstup výstup chybový výstup chybový výstup $ command_1 | command_2 Použití: Roury a chybový proudRoury a chybový proud C2110 Operační systém UNIX a základy programování, podzim 2008 - 58 Přenos standardního chybového výstupu přes rouru je možné provést po jeho spojení se standardním výstupem. process 1 process 2 vstup výstup | vstup výstup chybový výstup chybový výstup $ command_1 2>&1 | command_2 Použití: 2>&1 C2110 Operační systém UNIX a základy programování, podzim 2008 - 59 Tipy a triky aneb užitečné kombinace příkazů Tipy a trikyTipy a triky C2110 Operační systém UNIX a základy programování, podzim 2008 - 60 - C2110 Operační systém UNIX a základy programování, podzim 2008 - 61 - Literatura zdroje užitečných informací LiteraturaLiteratura C2110 Operační systém UNIX a základy programování, podzim 2008 - 62 - C2110 Operační systém UNIX a základy programování, podzim 2008 - 63 - Poděkování