Jdi na obsah Jdi na menu
 


Príkazový riadok

Príkazový riadok (alebo tiež shell) je používateľské rozhranie pre prácu s operačným systémom. Shell interpretuje príkazy, ktoré mu my zadávame a spúšťa programy, ktoré komunikujú s jadrom. No a jadro pristupuje k hardwaru a vykonáva, čo sme mu my zadali (napríklad maže súbory na pevnom disku). My sa budeme venovať najpoužívanejšiemu linuxovému shellu - BASHu. Medzi iné shelly patria TENEX C shell (tcsh), Korn shell (ksh) či Almquist shell (ash). V prvých verziách Unixu sa využíval Bourne shell (sh) a v dnešnej dobe každý operačný systém vychádzajúci z Unixu má nejaký ekvivalent Bourne shellu. V Linuxe to je, ako som už spomínal, najčastejšie BASH, ktorý je s Bourne shellom kompatibilný, ale je oveľa bohatší na funkcie. BASH (Bourne-again shell) bol naprogramovaný v roku 1987 Brianom Foxom ako súčasť projektu GNU. V grafických prostrediach Linuxu existujú grafické emulátory terminálu, napríklad v KDE to je program konsole, ktorý si môžeme v nastaveniach schém upraviť napríklad aj tak ako to vidíte na mojom screenshote.

Konsole - emulátor terminálu v KDE

No... dúfam, že som vás na začiatok neodradil množstvom cudzích slov, a tak sa môžeme pustiť do základov práce s BASHom.

Na začiatok ešte pár najzákladnejších informácií, ktoré si dobre zapamätajte:

  • Linux má inú adresárovú štruktúru
  • Linux je "case sensitive", rozlišuje veľkosť písmen, čiže mu nie je jedno, či názov príkazu, súboru alebo adresára napíšete Takto, TAKTO, takto alebo TaKtO :)
  • vo Windowse sa jednotlivé zložky oddeľovali opačnou lomkou "\", v Linuxe sa oddeľujú klasickou "/".
  • aktuálny adresár (čiže adresár, v ktorom "sa nachádzame") môžeme zapísať takto "./". Domovský priečinok aktuálne prihláseného používateľa môžeme zapísať znakom "~" (vyslovuje sa "tilda" a napíše sa kombináciou kláves pravý Alt + A).
  • príkaz sa skladá z tela a spravidla aj rôznych parametrov

Tu je na mieste spomenúť niekoľko vlastností linuxových shellov (v našom prípade BASH), ktoré nám vedia výrazne urýchliť prácu v príkazovom riadku:

Prvou je história použitých príkazov, ktorú niektorí zaiste poznáte aj z MS DOS-u. Pohybuje sa v nej pomocou šípok hore a dole. Tieto príkazy je možné, samozrejme, editovať a znovu spúšťať.

Druhou vlastnosťou, na ktorú si určite rýchlo zvyknete, je dopĺňanie názvov príkazov, súborov a adresárov pomocou klávesy TAB. Ak máme v aktuálnom adresári súbory tux.png a penguin.png, napíšeme napríklad príkaz rm -i t a stlačíme TAB, BASH doplní celý názov súboru na rm -i tux.png. Prvé znaky mena súboru (resp. priečinku, príkazu) ho však musia jednoznačne identifikovať. Preto, ak by sme mali v adresári súbory croatia01.jpg, croatia02.jpg a croatia03.jpg, zapísali príkaz rm -i c a stlačili TAB, BASH by nám meno súboru doplnil až do miesta, kde sa tieto súbory líšia, čiže na rm -i croatia0. Ak v tomto momente klávesu TAB stlačíme ešte raz, vypíšu sa nám všetky súbory, ktoré začínajú na "croatia0":

ondrej@susanne:~/fotky$ rm -i croatia0 TAB
croatia01.jpg croatia02.jpg croatia03.jpg
ondrej@susanne:~/fotky$ rm -i croatia0

Teraz by sme mohli napísať napríklad "2", stlačiť opäť TAB a meno súboru by sme mali kompletné aj s príponou. Presne to isté sa dá robiť aj v prípade príkazov - dopĺňať ich mená či vypisovať všetky, ktoré sa začínajú na zadané znaky. Ak v tom získate istú prax a zručnosť, budete v shelli vedieť podstatne rýchlejšie prechádzať adresármi a vykonávať rôzne operácie so súbormi ako v nejakom grafickom súborovom manažérovi.

Základné príkazy BASHu a ich použitie

cd (z anglického change directory - zmeň adresár) - použitie príkazu je jednoduché - cd a adresár, kde chceme vojsť. Ak sa chceme posunúť o adresár vyššie, zadáme príkaz cd .. (medzera + dve bodky).

ondrej@susanne:/home$ cd ondrej/fotky/
ondrej@susanne:~/fotky$

Na zistenie názvu a cesty priečinku, v ktorom sa nachádzame, použijeme jednoduchý príkaz pwd (z angl. print working directory).

ondrej@susanne:~/fotky$ pwd
/home/ondrej/fotky

Nový adresár vytvoríme pomocou príkazu mkdir (z angl. make directory). Napríklad "mkdir Dokumenty" vytvorí adresár Dokumenty v aktuálnom adresári. Prázdny priečinok odstránime príkazom "rmdir Dokumenty" (remove directory). Ak obsahuje ďalšie súbory, BASH vyhlási rmdir: `Dokumenty/': Directory not empty, a preto ho musíme zmazať príkazom rm -r Dokumenty/ (viac o príkaze rm sa dočítate ďalej).

ls (z angl. list) - tento príkaz sa používa na výpis adresárov a súborov zo zadaného adresára.

ondrej@susanne:/home$ ls ondrej/fotky/
2005 croatia01.jpg croatia02.jpg croatia03.jpg

Ak chceme vypísať obsah aktuálneho adresára, stačí zadať iba príkaz ls. Tento príkaz má aj niekoľko zaujímavých argumentov:

  • -a - vypíšu sa aj skryté súbory a adresáre (čiže tie, ktorých meno začína bodkou)
  • -l - detailný výpis aj s právami, dátumom zmeny, veľkosťou súborov atď.
  • -F - na koniec názvu súboru sa pridá znak, ktorý bude charakterizovať typ súboru (napr. "/" pre adresár, "*" pre spustiteľný súbor...)
  • -R - obsah sa vypíše rekurzívne, čiže vrátane obsahu podadresárov
  • -h - pri tomto argumente sa veľkosť súboru nebude vypisovať v bytoch, ale v kB, MB, GB
  • --color - adresáre a rôzne typy súborov budú farebne rozlíšené

ondrej@susanne:~/fotky$ ls -lFh --color
total 2.6M
drwxr-xr-x 2 ondrej ondrej 4.0K 2005-08-10 13:39 2005/
-rwxr-xr-x 1 ondrej ondrej 840K 2005-08-10 13:37 croatia01.jpg*
-rwxr-xr-x 1 ondrej ondrej 973K 2005-07-21 13:30 croatia02.jpg*
-rwxr-xr-x 1 ondrej ondrej 780K 2005-07-13 09:26 croatia03.jpg*

Ako vidíte, ls má mnoho nádherných argumentov :). Viac nájdete v man ls.

Pri tomto príkaze si spomenieme aj funkciu zástupných znakov. Ak chceme zobraziť trebárs všetky súbory začínajúce sa na písmeno a, zadáme príkaz ls a* (znak "*" nahrádza ľubovoľný počet znakov v mene súboru). Ak by sme zadali príkaz ls a?, vypísali by sa nám všetky súbory začínajúce sa na a, ktoré majú v názve dva znaky (pretože znak "?" nahrádza práve jeden znak v mene súboru). Zástupné znaky sa využívajú aj v mnohých iných príkazoch (napr. cp, mv, rm).

cp (z angl. copy) - pomocou tohto príkazu môžeme kopírovať súbory a adresáre. Použitie: "cp [argumenty] /zdrojovy/adresar /cielovy/adresar".

  • -i - bude sa vyžadovať potvrdenie prepísania súboru rovnakého mena
  • -r - rekurzívne kopírovanie (čiže aj obsah podadresára)

mv (z ang. move) - príkaz na presúvanie súborov a adresárov. Syntax je podobná ako pri cp, ale príkaz mv napríklad nemá argument -r (rekurzívne), pretože by nemal význam :). Takisto sa používa aj na premenovanie súborov:

ondrej@susanne:~/fotky$ mv croatia01.jpg na_plazi.jpg

rm (z angl. remove - odstrániť) - príkaz na odstránenie súborov a adresárov. Niektoré dôležité argumenty tohto príkazu sú identické ako argumenty predchádzajúcich príkazov:

  • -r - rekurzívne mazanie, tzn. aj podadresáre so súbormi
  • -i - bude vyžadovať potvrdenie každého zmazania
  • -f - argument, po ktorom nebudú potrebné žiadne potvrdenia a nebudú sa zobrazovať žiadne výpisy

V niektorých distribúciách sa príkaz rm zvykne "aliasovať" na rm -i (čiže ak zadáte rm, príkaz prebehne aj s argumentom -i), aby sa predišlo nešťastnej strate dát, ktorá môže mať neblahé následky. Zaiste niektorí z nás poznajú ten pocit beznádeje a paniky po nenávratnej strate dát :). Možno ste sa už stretli s príkazom rm -rf /. Ak ho spustí root, obsah všetkých diskov ("/") bude rekurzívne ("-r") zmazaný bez akéhokoľvek potvrdzovania ("-f"). Preto ho použite len v prípade, že naozaj viete, čo robíte. Tento príkaz je aj častým predmetom rôznych vtipov, tak si dajte pozor, aby ste ním neboli aj vy ;).

more - príkaz slúžiaci na zobrazenie textového súboru.

man - tu nájdete všetky podrobnosti ohľadom každého príkazu, man prikaz vám totiž zobrazí podrobný manuál. Pohybuje sa v ňom šípkami hore a dole a ukončuje sa klávesom Q.

emacs - veľmi dobrý textový editor, určite sa vám zíde, keď budete potrebovať editovať nejaké konfiguračné súbory v shelli a nebudete pri tom mať grafické prostredie. Je pomerne nenáročný na obsluhu. Stačí si zapamätať, že menu vyvoláte pomocou F10 :). Samozrejme, potrebujete ho mať nainštalovaný.

links - textový internetový prehliadač. Takisto ako emacs, je potrebné ho zvlášť nainštalovať. Zaiste ho využijete pri vyhľadávaní problémov v googli :) Menu sa zobrazí klávesom ESC.

V tomto článku som vám chcel predstaviť linuxový príkazový riadok - BASH - a jeho najzákladnejšie použitie. Viac nájdete v manuálových stránkach jednotlivých príkazov. Verím, že sa už v Linuxe aj bez grafického prostredia nestratíte.

 

 

Komentáře

Přidat komentář

Přehled komentářů

40 Ways to Earlier small Your Blood Influence

(ABarassuri, 8. 10. 2018 3:21)

Pression arterielle est comment robuste votre sang pousse contre les parois de vos arteres lorsque votre coeur essence pompe le sang. Arteres sont les tubes qui transportent perseverent b gerer offre sang loin de votre coeur. Chaque set votre moelle bat, il pompe le sang par de vos arteres a la reste de votre corps.
https://www.cialispascherfr24.com/cialis-generique-tadalafil-comprimes/

Rare Olden Indian Plant Resets Blood Weight

(Aaccurcics, 26. 7. 2018 20:51)

Poids est comment calleux votre sang pousse contre les parois de vos arteres lorsque votre coeur essence pompe le sang. Arteres sont les tubes qui transportent prendre offre sang loin de votre coeur. Chaque set votre manque de sensibilite bat, il pompe le sang par de vos arteres a la flanerie de votre corps.
https://www.cialispascherfr24.com/cialis-pour-femme-prix/

pomoc

(Peter, 22. 1. 2010 23:36)

si asi stlacil ctrl+alt+f1 cim si sa prepol do klasickeho terminalu...stlacenim ctrl+alt+f7 sa prepnes naspat do desktopu

pomooooc

(johanko, 18. 7. 2008 9:54)

zom z linuxu magor ...nedavno som bol este na ploche atd...a teraz ako keby ma hodilo do dosu ale pyta normalne login a heslo len som v tom ciernom prostredi dosu ako to mam dat spet zasa na plochu??? :{