
Owen Little
0
1246
310
Rádi používáte bash shell v Linuxu? Nebo byste raději vyzkoušeli alternativu? K dispozici jsou tsch, ryby, KornShell a Z Shell. Ale která z těchto linuxových ulic je nejlepší?
Co je Shell?
Když píšete aplikaci, obvykle se to děje v jazyce na vysoké úrovni, kterému lidé rozumějí. Příkladem jsou C #, Java, C ++ atd. Věřte tomu nebo ne, váš počítač vidí vše jako 1s jako 0s nebo, jak je obecně známo, binární nebo strojový kód Co je binární? [Vysvětlená technologie] Co je binární? [Technologie vysvětlena] Vzhledem k tomu, že binární je tak absolutně zásadní pro existenci počítačů, zdá se zvláštní, že jsme se s tématem nikdy nezabývali - takže dnes bych si myslel, že dám krátký přehled toho, co binární… .
Kompilátor poté převede jazyk na vysoké úrovni do binárního souboru jako spustitelný soubor. Tento binární soubor je to, co provedete pro spuštění uvedené aplikace. Nyní se jedná o pohled na velmi vysokou úroveň toho, co se stane, ale pamatujte, že váš počítač potřebuje vrstvu překladu mezi tím, co říkáte, a tím, jak tomu může rozumět.
Shell je to, co se nazývá tlumočník. Podobně jako kompilátor překladač překládá lidský kód do strojového kódu. Jedním z rozdílů je to, že interpret dělá toto jedno prohlášení najednou na rozdíl od kompilátoru, který prohledává celý program a převádí jej jako celek do strojového kódu.
Shell je tedy rozhraní pro interakci s vaším operačním systémem (OS). Když píšete příkazy do shellu, shell je zodpovědný za interpretaci těchto příkazů a dosažení magie. Operace, jako je kopírování souborů, potrubí, výpis souborů, jsou v kompetenci shellu. Je také zodpovědný za zapamatování historie vašich příkazů pro kontrolu toho, co prošlo hlavou v době možného opilství.
Chcete-li zjistit všechny skořápky, které jsou k dispozici ve vašem systému, otevřete terminál a zadejte:
kočka / etc / granáty
Chcete-li zjistit, jaký typ prostředí právě používáte, postupujte takto:
echo $ 0
1. Bash
Mile, nejoblíbenější prostředí mezi uživateli Linuxu. Je těžké dokonce myslet na granáty, aniž by Bourne-Again SHell (bash) byl součástí rovnice. Mnoho linuxových distribucí je dodáváno s výchozím shellem bash, protože bash je výchozí shell GNU. Vydáno v roce 1989 se může pochlubit také několika desetiletími zdravého vývoje.
Bashův předchůdce je Bourne Shell (sh), což je jedna z původních unixových granátů. Jednou z atraktivních funkcí pro programátory sh bylo, že mohli přenášet své sh skripty. Co je Shell Scripting a proč byste měli používat Co je Shell Scripting a proč byste měli používat Kromě schopnosti interaktivně přijímat a provádět příkazy interaktivně, může shell také provádět příkazy uložené v souboru. Toto je známé jako skriptování prostředí. Zde se věnujeme základům skriptování prostředí. přímo na bash zcela beze změny. Bash také nabízí několik vylepšení svého předchůdce, jako je dokončení příkazu a historie příkazů.
Bash je dokonale slušný shell a často online dokumentace vždy předpokládá, že jej používáte. Bash však není bez jeho nedostatků - jak může kdokoli, kdo někdy napsal bash skript, který pokrývá několik řádků, to dokázat! Není to tak, že něco nemůžete udělat, je to tak, že není vždy zvlášť elegantní číst a psát. Bash je pravděpodobně tu, aby zůstal alespoň v nejbližší budoucnosti. Může se pochlubit rozsáhlou instalační základnou a brigádami náhodných i profesionálních uživatelů, kteří jsou již na jeho používání zvyklí, a vtípky.
2. KornShell
Běžně známý jako ksh, KornShell je alternativní skořápka, která vznikla v Bell Labs v 80. letech. Ksh začal svůj život jako proprietární software de facto Standard pro komerční odvětví, a proto nebyl Linux k dispozici až do roku 2000. Mezi bash a ksh není mnoho rozdílů, ale každý má oproti druhému menší výhody. Například Ksh má starý starý příkaz cd. Pokud jste byli v adresáři / Ke stažení / foo / bar /jeden/ foobar a vy jste se museli dostat / Ke stažení / foo / bar /dva/ foobar stačí spustit:
cd jedna dvě
Veteráni z Ksh budou obhajovat jeho převahu tím, že uvedou jeho skriptovací výhody. Mezi ně patří zahrnutí lepší syntaxe smyčky, přirozenější způsoby opakování příkazů a stěží použité asociativní pole. Pro základní vstup je bash docela podobný kshu pro pokročilé skriptování, je to však jistě jiný zážitek. Další věcí, kterou je třeba mít na paměti, je požádat o pomoc pro ksh online. To může zahrnovat probuzení grizzled pokročilého uživatele z jeho spánku, aby vám pomohl. Ve vztahu k bash, což vám přinese téměř spoustu odpovědí téměř okamžitě!
Pokud chcete vyzkoušet ksh, můžete napsat:
sudo apt install ksh ksh
3. Tcsh
Tcsh může sledovat jeho kořeny zpět do počátků Unixu. Jde v podstatě o C shell (csh) s programovatelným dokončením příkazového řádku, úpravou příkazového řádku a několika dalšími funkcemi. Tcsh je výchozí shell pro systémy založené na BSD, jako je FreeBSD. Velkým prodejním bodem pro tcsh je jeho skriptovací jazyk, který by měl vypadat velmi dobře každému, kdo programoval v C. Tcsh je hodný kandidát pro učení, pokud se ocitnete primárně programování v C Proč C Programování je stále stojí za učení Proč C Programování je Still Worth Learning C není mrtvý jazyk. Ve skutečnosti jej časopis IEEE Spectrum v roce 2017 označil za nejlepší jazyk č. 2. Zde je pět důvodů. . Díky tomu je nástroj tcsh užitečný při vytváření prototypů malých programů C, aniž by došlo k záměně nad věcmi, jaké závorky používáte. K tomuto problému obvykle dochází, pokud neustále přepínáte mezi programováním C a skriptováním prostředí.
Tcshovo skriptování je u některých zbožňováno a jiné nenáviděno. Má však i další funkce, včetně přidávání argumentů k přezdívkám a různých výchozích hodnot, které by mohly vyhovovat vašim preferencím. Jednou z jeho významných funkcí je způsob automatického dokončování a dokončení historie. Po vytáhnutí své historie zadáním Dějiny. Tcsh zobrazí očíslovaný seznam vašich předchozích příkazů s velmi pohodlným časovým razítkem. Můžete spustit libovolný příkaz zadáním !n nahrazení n odpovídajícím číslem v zobrazené historii. Dokončení karty Historie v tcsh funguje zadáním:
!A
Tím se rozšíří na poslední příkaz, který začal písmenem “A”. Poměrně, v bashu, byste museli psát !a: p nejprve vidět příkaz, následovaný !! provést to.
Chcete-li vyzkoušet tcsh, zadejte:
sudo apt install tcsh tcsh
4. Ryby
Ze všech vážností Linuxu, tým v rybách vložil do svého projektu smysl pro humor. Na jejich webových stránkách čte název jazyk v tváři “Nakonec shell příkazového řádku pro 90. léta” - Ryba (“Friendly interactive shell”) byla vyvinuta v roce 2005. Kromě nabízených “Skvělá barva VGA,” jsou některá vylepšení oproti jiným granátům. Příkazy, které mají neplatnou syntaxi, se zobrazí červeně a správná syntaxe modře. Kromě toho existují četné sady doplňků karet, jako jsou barevně označené návrhy automatického doplňování, které vycházejí z vaší historie.
Fish se také může pochlubit dokončením příkazů založených na manuálových stránkách vašeho počítače. Jak zkrátit manuálové stránky na čitelná vysvětlení v systémech Linux a MacOS Jak zkrátit manuálové stránky na srozumitelné vysvětlení v systémech Linux a MacOS MacOS a Linux mají každý užitečný příkaz „člověk“, který zobrazí ruční vysvětlení příkazů terminálu. Protože jsou často zdlouhaví, proč je nepoužít pomocí nástroje tldr ke zkrácení na čitelné kousky? . Takže pokud jste právě nainstalovali nový program a potřebujete si zvyknout na jeho syntaxi, ryba chytne syntaxi z manuálové stránky a přidá ji k vašim automatickým návrhům. Elegantní! Pokud se chcete lépe seznámit s příkazovým řádkem, může být ryba skvělým místem pro začátek.
Chcete-li ochutnat, o čem jsou ryby, zadejte:
sudo apt instalujte rybí ryby
5. Z Shell
Mnozí by to považovali za ponechání toho nejlepšího skořápky na poslední, což by bylo zcela pochopitelné. Zsh má podobnosti jako bash a ksh a zahrnuje mnoho funkcí, které v nich a tcsh jsou. Některé užitečné funkce zsh zahrnují přehledný seznam automatického doplňování. Na rozdíl od bash, který pouze uvádí všechny dostupné příkazy a způsobí, že jej zadáte ručně. Kulhání v zsh je nevysvětlitelně užitečné. Psaní na stroji:
vim / u / l / b / a
Automaticky otevře soubor:
/usr/local/bin/autoupdate.sh
Oprava pravopisu v zsh je mnohem lepší než u bash. V CD příkaz bash může opravit až jeden znak. Na druhou stranu Zsh lze nakonfigurovat tak, aby v jednom slově opravovalo 10 pravopisných chyb. Zsh také hřebíky historie příkazového řádku. To je velmi užitečné pro uživatele, kteří tráví na terminálu příliš mnoho času. Zsh magicky sdílí historii napříč terminály, díky čemuž jsou relace s více terminály hračkou.
Zsh může chvíli trvat, než se nakonfiguruje při prvním použití, pokud nepůjdete s výchozí konfigurací. Chcete-li to vyzkoušet, zadejte:
sudo apt install zsh zsh
Který Shell je pro mě?
Skutečnost, že tyto možnosti jsou k dispozici, je vynikající. Jsou to pohledy do historie samotné výpočetní techniky, kde se programátoři rozhodli, že si chtějí udělat věci vlastní cestou, a nakonec je osvobodit do světa.
Podstatné rozdíly mezi těmito shelly lze nalézt v skriptovací syntaxi. Každá skořápka má zvláštní sadu nuancí, které je od sebe oddělují. V současné době dominuje bash z hlediska podílu na trhu, což usnadňuje hledání pomoci. Bash je prostě nejlepší všestranný hráč, který splňuje potřeby všech kromě nejpokročilejších uživatelů.
Který shell v současné době používáte? Vyzkoušeli jste jinou skořápku než bash? Co máte rádi nebo nenávidíte na své současné skořápce? Podělte se o své myšlenky v komentářích níže!
Obrázek Kredit: spaxiax / Depositphotos