Příkazový řádek Linuxu je nástroj, který by měl znát každý správce systému. S mocí příkazů, které máte na dosah ruky, je jen velmi málo věcí, které nemůžete udělat. Spolu s touto mocí však přichází potřeba si tyto příkazy zapamatovat. Když vezmete v úvahu, jak složité tyto příkazy mohou být, je pochopitelné, že někteří správci mají problém vzpomenout si, co udělali nebo potřebují udělat na příkazovém řádku Bash.
Možná jste museli zadat příkaz:
iptables -A OUTPUT -o eth0 -p tcp -m multiport --sports 22,80,443 -m state --state ESTABLISHED -j ACCEPT
Nebo jste se možná nedávno bezpečně připojili k serveru, ale nepamatujete si z ruky IP adresu.
Co uděláte? Většina linuxových administrátorů by vám okamžitě řekla, abyste se podívali do historie Bash; a to by byla moudrá rada. Po zadání příkazu historie se vám zobrazí posledních X příkazů, které jste v systému spustili. Číslo X je určeno v souboru ~/.bashrc, v řádku:
HISTSIZE=1000
Příkaz history je ve skutečnosti skvělý způsob, jak zjistit, jaké příkazy jste vydali. Můžete jej projít, najít příkaz, který potřebujete, zkopírovat jej a poté vložit zpět do příkazového řádku. Nebo můžete v příkazovém řádku jednoduše začít klepat na šipku nahoru na klávesnici, dokud nenarazíte na příkaz, který potřebujete.
Co kdybych vám řekl, že existuje mnohem, mnohem, mnohem jednodušší způsob? Existuje a jmenuje se ryba. Fish je přívětivý interaktivní shell, který lze nainstalovat do počítače s Linuxem a který obsahuje:
-
Automatické návrhy
-
Skriptovatelnost
-
Doplňování stránek
-
Barva VGA
-
Web-založené na konfiguraci
-
Snadné používání
Provedu vás instalací a používáním rybího krunýře; jakmile začnete tento šikovný nástroj používat, je pravděpodobné, že už se nikdy nevrátíte ke starému standardnímu linuxovému shellu.
Instalace
Fish můžete nainstalovat v Ubuntu, Debianu, Fedoře, RHEL, openSUSE, CentOS, Arch Linuxu, Gentoo Linuxu a dokonce i v Mac OS a Windows. Instalaci budu demonstrovat na Elementary OS, takže instalace pro vaši distribuci se bude lišit (návod pro všechny podporované platformy získáte na hlavní stránce fish). Instalace pro Elementary OS (stejně jako pro většinu systémů založených na Debianu) probíhá následovně:
-
Otevřete okno terminálu
-
Příkazem sudo apt-add-repository ppa přidejte potřebný repozitář:fish-shell/release-2
-
Aktualizujte apt příkazem sudo apt-get update
-
Instalujte fish příkazem sudo apt-get install fish
To je vše; fish je nyní nainstalován a připraven sloužit.
První kroky
Jste na příkazovém řádku Bash, máte nainstalovaný příkaz fish a netušíte, jak jej využít. To proto, že jste stále v příkazovém řádku bashe. Chcete-li fish využít, musíte vstoupit do příkazového řádku fish. Jak to uděláte? Zadejte příkaz fish a uvidíte, jak se váš prompt změní (obrázek 1).
V tuto chvíli jste připraveni začít používat fish. Nejlépe uděláte, když začnete psát příkaz. Uvidíte, že fish odvede skvělou práci při dokončování příkazu, bashe na vaší historii. Pokud například začnu psát ssh, fish doplní příkaz nejnovějším odpovídajícím záznamem z historie bashe (obrázek 2).
Pokud je to příkaz, který hledáte, stiskněte klávesu se šipkou doprava pro přijetí a poté stiskněte Enter. Jediná výhrada k rybě je, že jakmile udělá návrh, nemůžete procházet historii podobných příkazů (což by byla pěkná funkce).
Jednou opravdu skvělou věcí, kterou můžete s rybou dělat, je získávat návrhy příkazů na základě toho, co jste zadali. Řekněme, že existuje například nástroj ssh, který chcete použít, ale nemůžete si vzpomenout na název příkazu (ale víte, že začíná na „ssh“). Zadejte příkaz ssh a stiskněte klávesu Tab. Fish vám předloží návrhy, z nichž jeden by mohl být příkaz, který hledáte (obrázek 3).
S fish můžete dělat mnoho věcí. Chcete-li se je všechny naučit, nejlépe uděláte, když si projdete oficiální výukový program fish (který nabízí spoustu příkladů, které posílí vaše zkušenosti s fish).
Jakmile skončíte s příkazem fish, můžete se vrátit do bashe zadáním příkazu exit.
Konfigurace fish
Jedním úkolem, který byste rozhodně měli provést, je konfigurace. Po vybalení z krabice je fish neuvěřitelně mocným a šikovným nástrojem k použití. Fish však nabízí spoustu úprav, které lze doladit pomocí webového konfiguračního nástroje. Do webového rozhraní se dostanete tak, že vstoupíte do shellu fish a zadáte fish_config. Na klávesnici stiskněte Enter a ve výchozím prohlížeči se otevře konfigurační stránka fish (obrázek 4).
Důrazně doporučuji upravit výzvu fish tak, aby rozdíly mezi ní a standardní výzvou nebyly tak nepatrné. To provedete tak, že kliknete na kartu prompt, budete rolovat dolů, dokud nenajdete styl, který vám vyhovuje, vyberete tento prompt a pak kliknete na tlačítko Nastavit prompt (obrázek 5).
Po provedení změn zavřete okno (nebo kartu) prohlížeče, vraťte se do okna terminálu a stiskněte Enter. Nová konfigurace výzvy bude nastavena a můžete začít pracovat.
V rámci webového nástroje lze nastavit poměrně mnoho dalších možností. Odtud můžete také nastavit zkratky (aliasy) pro příkazy. To lze provést i z rybího příkazu, ale pomocí webového rozhraní je to o něco jednodušší. Řekněme, že se pravidelně připojujete k určitému serveru pomocí příkazu ssh:
ssh -v [email protected]
Pomocí zkratek jej můžete zkrátit například na ssho. V takovém případě by stačilo napsat ssho (v rámci shellu fish), stisknout enter a spustí se celý příkaz. Chcete-li vytvořit zkratku, spusťte příkaz fish_config (z příkazového řádku fish), přejděte na kartu zkratek ve webovém nástroji a poté zadejte zkratku do levého textového pole a plný příkaz do pravého textového pole (obrázek 6). Stiskněte tlačítko Uložit a vaše zkratka je připravena.
Ujistěte se, že jste zavřeli okno (nebo kartu) prohlížeče, a poté stiskněte Enter (na klávesnici) zpět na výzvu programu fish.
Učte se dál
Chcete-li z fish vytěžit co nejvíce, bylo by vhodné pročíst si oficiální dokumentaci k fish (stačí napsat help na výzvu fish a stisknout Enter). Budete příjemně překvapeni, kolik toho pro vás tento shell dokáže.
Poznamenejte si má slova, příkaz fish se velmi rychle stane nepostradatelným nástrojem, který vám pomůže při každodenních úkolech správy Linuxu.
Zjistěte více o Linuxu prostřednictvím bezplatného kurzu „Úvod do Linuxu“ od The Linux Foundation a edX.