Příkazová řádka

V této lekci se seznámíme s příkazovou řádkou – černým okýnkem, které programátoři používají na zadávání příkazů. Na první pohled může vypadat nepřirozeně, ale dá se na ni zvyknout :)

Příkazová řádka (respektive program, kterému se říká i konzole či terminál; anglicky command line, console, terminal) se na různých systémech otevírá různě:

Nevíš-li si rady, zkus buď googlit, nebo se zeptat e-mailem.

Po otevření konzole tě uvítá řádek, kterým počítač vybízí k zadání příkazu. Podle systému bude končit buď znakem $ nebo >, před nímž můžou být ještě další informace:

Unix (Linux, macOS)

$

Windows

>

Podle systému se potom liší i samotné příkazy, které budeš zadávat.

Velikost písma

Je-li ve Windows moc malé písmo, klikni na ikonku okna a vyber Možnosti. V záložce Písmo si pak můžeš vybrat větší font.

Screenshot menu příkazové řádky

Na ostatních systémech hledej v nastavení, nebo zkus Ctrl++ a Ctrl+- (příp. se Shift).

První příkaz

Začneme jednoduchým příkazem. Napiš whoami (z angl. who am I? – kdo jsem?) a stiskni Enter. Objeví se přihlašovací jméno. Třeba u Heleny by to vypadalo takhle:

Unix

$ whoami
helena

Windows

> whoami
pocitac\Helena

Znak $ nebo > je v ukázce jen proto, aby bylo jasné, že zadáváme příkaz do příkazové řádky. Vypíše ho počítač, většinou ještě s něčím před ním, takže ho nepiš sama! Zadej jen whoami a Enter.

Stejně tak počítač sám vypíše přihlašovací jméno.

Aktuální adresář

Příkazová řádka pracuje vždy v nějakém adresáři (neboli složce, angl. directory, folder). Ve kterém adresáři zrovna je, to nám poví příkaz, který se podle systému jmenuje pwd nebo cd (z angl. print working directory – vypiš pracovní adresář, resp. current directory – aktuální adresář).

Unix

$ pwd
/home/helena/

Windows

> cd
C:\Users\helena

Aktuální adresář se většinou ukazuje i před znakem $ nebo >, ale je dobré pwd/cd znát, kdyby ses náhodou ztratil/a (nebo musel/a pracovat na počítači který před $ ukazuje něco jiného).

Co v tom adresáři je?

Příkaz ls nebo dir (z angl. list – vyjmenovat, resp. directory – adresář) nám vypíše, co aktuální adresář obsahuje: všechny soubory, včetně podadresářů, které se v aktuálním adresáři nacházejí.

Unix

$ ls
Applications
Desktop
Downloads
Music

Windows

> dir
 Directory of C:\Users\helena
05/08/2014 07:28 PM <DIR>  Applications
05/08/2014 07:28 PM <DIR>  Desktop
05/08/2014 07:28 PM <DIR>  Downloads
05/08/2014 07:28 PM <DIR>  Music

Změna aktuálního adresáře

Aktuální adresář se dá změnit pomocí příkazu cd (z angl. change directory – změnit adresář). Za cd se píše jméno adresáře, kam chceme přejít. Pokud máš adresář Desktop nebo Plocha, přejdi tam. Pak nezapomeň ověřit, že jsi na správném místě.

Jsi-li na Linuxu nebo macOS, dej si pozor na velikost písmen: na těchto systémech jsou Desktop a desktop dvě různá jména.

Jsi-li na Windows, cd už jsi používala – tento příkaz se chová různě podle toho, jestli něco napíšeš za něj nebo ne.

Unix

$ cd Desktop
$ pwd
/home/helena/Desktop

Windows

> cd Desktop
> cd
C:\Users\helena\Desktop

Poznámka pro Windows

Pokud přecházíš do adresáře na jiném disku, například D: místo C:, je potřeba kromě cd zadat jméno disku s dvojtečkou jako zvláštní příkaz (např. D:).

Vytvoření adresáře

Co takhle si vytvořit adresář na Python? To se dělá příkazem mkdir (z angl. make directory – vytvořit adresář). Za tento příkaz napiš jméno adresáře, který chceš vytvořit – v našem případě naucse-python:

Unix

$ mkdir naucse-python

Windows

> mkdir naucse-python

Teď se můžeš podívat na Plochu nebo do nějakého grafickém programu na prohlížení adresářů: zjistíš, že adresář se opravdu vytvořil!

Úkol

Zkus v nově vytvořeném adresáři naucse-python vytvořit adresář test a zkontrolovat, že se opravdu vytvořil.

Budou se hodit příkazy cd, mkdir a ls či dir.

Řešení

Úklid

Teď vytvořené adresáře zase smažeme.

Nemůžeš ale smazat adresář, ve kterém jsi. Proto se vrátíme na Desktop. Ale nemůžeme použít cd Desktop – v aktuálním adresáři žádný Desktop není. Potřebuješ se dostat do nadřazeného adresáře: toho, který obsahuje adresář ve kterém právě jsi. Nadřazený adresář se značí dvěma tečkami:

Unix

$ pwd
/home/helena/Desktop/naucse-python
$ cd ..
$ pwd
/home/helena/Desktop

Windows

> cd
C:\Users\helena\Desktop\naucse-python
> cd ..
> cd
C:\Users\helena\Desktop

Teď můžeš smazat vytvořený adresář naucse-python. K tomu použij příkaz rm nebo rmdir (z remove – odstraň, resp. remove directory – odstraň adresář).

Pozor!

Příkazová řádka nepoužívá odpadkový koš! Všechno se nadobro smaže. Takže si dobře překontroluj, že mažeš správný adresář.

Na Unixu za tento příkaz musíš napsat ještě jedno slovo: -rv (minus, r, v). To je takzvaný přepínač, který příkazu říká, že má smazat celý adresář včetně všeho, co obsahuje (r), a že má informovat o tom co dělá (v).

Obdobně i na Windows je potřeba zadat přepínač, který říká, že má smazat adresář a veškerý jeho obsah. Tentokrát je to /S (lomítko, S). Příkaz rmdir se automaticky ujistí, jestli to co mažeš opravdu chceš smazat.

Unix

$ pwd
/home/helena/Desktop
$ rm -rv naucse-python
removed directory: ‘naucse-python’

Windows

> cd
C:\Users\helena\Desktop
> rmdir /S pyladies
pyladies, Are you sure <Y/N>? Y

Shrnutí

Tady je tabulka základních příkazů, se kterými si zatím vystačíme:

Unix Windows Popis Příklad
cd cd změna adresáře cd test
pwd cd výpis aktuálního adresáře pwd
cd
ls dir výpis adresáře ls
dir
cp copy zkopírování souboru cp puvodni.txt kopie.txt
copy puvodni.txt kopie.txt
mv move přesun/přejmenování souboru mv puvodni.txt novy.txt
move puvodni.txt novy.txt
mkdir mkdir vytvoření adresáře mkdir test
rm del smazání souboru rm test.txt
del test.txt
exit exit ukončení exit

Příkazů existuje samozřejmě daleko víc. Dokonce každý program, který máš na počítači nainstalovaný, jde spustit z příkazové řádky – a to většinou jen zadáním jeho jména. Zkus, jestli na tvém počítači bude fungovat firefox, notepad, safari nebo gedit.

Při učení Pythonu použiješ programy/příkazy jako python a git, které zanedlouho nainstalujeme.

Konec

Nakonec vyzkoušej ještě jeden příkaz. Ten, který příkazovou řádku zavírá: exit.

Jako většina příkazů (kromě pár z těch základních) funguje exit stejně na všech systémech. Proto už nebudu používat ukázku rozdělenou pro Unix a Windows.

$ exit

Ve zbytku těchto materiálů budeme pro kód, který je potřeba zadat do příkazové řádky, používat unixovské $. S touto konvencí se setkáš i ve většině návodů na internetu. Používáš-li Windows, je dobré si na $ zvyknout, i když ve své řádce máš místo něj >.