Unix / Linux školjke 101

Autor: Eugene Taylor
Datum Stvaranja: 11 Kolovoz 2021
Datum Ažuriranja: 22 Lipanj 2024
Anonim
Training - USB 101 - Introduction to USB
Video: Training - USB 101 - Introduction to USB

Sadržaj



Izvor: Tomasz Bidermann / Dreamstime.com

Oduzeti:

Unix i Linux školjke vrlo su snažni i vrlo prilagodljivi.

Komandna linija na Unix i Linux sustavima već je vrlo moćna, ali ljuske su još snažniji alat nego što se uputi u oči. Možete ih prilagoditi i prebaciti ih na sadržaj vašeg srca sve dok znate kako.

Što je školjka?

Gotovo svaki priručnik za Unix i Linux ima standardni dijagram omotača koji se omotava oko operativnog sustava, nalik na neku vrstu bombona. Ljuska doista nije ništa drugo nego sučelje između operativnog sustava, uključujući kernel, datotečni sustav i različite pozive sustava i korisnika. Dugi niz godina bilo je jedino interaktivno korisničko sučelje prije nego što su grafička korisnička sučelja postala uobičajena u 1980-ima. Grafička korisnička sučelja također se mogu smatrati vrstom ljuske, jer služe mnogim istim funkcijama: pokretanje programa, konfiguriranje sustava i upravljanje datotekama.

Ova sučelja utemeljena na skromnosti imaju iznenađujuću snagu. Kao prvo, oni su potpuno razvijeni programski jezici. Prije pojave još snažnijih skriptnih jezika kao što je Python, skripte školjke bile su idealne za pisanje programa za koje nije nužno potrebna snaga C. Još su korisne za automatizaciju zadataka sustava i za brzo prototipiranje.

Oni također imaju brojne značajke koje olakšavaju rad i pronalaženje datoteka. Jedno od najčešće korištenih naziva je "wildcarding" ili "globlob". Gotovo svi korisnici Unixa i Linuxa poznati su "*" zamjenski znak koji odgovara bilo kojem znaku. To je zapravo posao školjke. Različite školjke imaju još snažnije mogućnosti.

Jedna od karakteristika Unixa je mogućnost preusmjeravanja ulaznih i izlaznih programa. Školjka provodi ovu funkcionalnost.

Školjka je samo još jedan program, pa je moguće da je svaki programer s pravim vještinama stvoriti. Tijekom godina pojavilo se nekoliko glavnih školjki.

Povijest i pregled školjki

Iako je bilo nekoliko Unix-ovih školjki u ranim danima operativnog sustava, prva koja je stekla veliko priznanje izvan Bell Labs-a bio je Bourne Shell, nazvan po Stephen R. Bourneu. Glavna inovacija školjki bila je ta što podržava značajke strukturiranog programiranja, omogućujući prvi put korištenje ljuske kao pravi programski jezik. Toliko je neophodno da ga sve moderne verzije Unixa i Linuxa i dalje koriste, iako je to obično jedna od novijih ljuska koja emuliraju Bourne-ovu ljusku.

Sljedeća glavna ljuska bila je C Shell, uobičajeno skraćeno kao "csh". Ova ljuska razvijena je u UC Berkeley, postajući glavna komponenta BSD ukusa Unixa. Kao što ime sugerira, njegova je sintaksa dizajnirana da nalikuje programskom jeziku C, ali stvarno je dizajnirana za interaktivnu upotrebu.

Uključio je mehanizam povijesti koji je omogućio korisnicima da se vrate i ponavljaju sve naredbe koje su izdali ranije bez ponovnog postavljanja čitavog retka i poboljšane kontrole poslova, što je olakšalo pokretanje više zadataka. (Upamtite, to je bilo vrijeme kada je većina ljudi još uvijek koristila terminale na bazi.)

Sljedeća velika školjka bila je Kornova školjka, koja je također izašla iz Bell Labs-a. Školjka je usput dobila ime po Davidu Kornu, a ne bend. Glavna inovacija Korn ljuske je uvođenje uređivanja naredbenog retka, što proširuje funkcionalnost povijesti. Korisnici se mogu vratiti i uređivati ​​naredbe koje su upisali pomoću naredbi sličnih vi ili Emacs uređivačima.

Od glavnih školjki, Bourne Again Shell, inače bash, najpopularniji je od svog uvođenja krajem 80-ih. Ova ljuska, razvijena u sklopu GNU projekta, uključuje inovacije ljuske C i Korn, zadržavajući kompatibilnost s Bourne školjkom, otuda i naziv. To je "standardna" školjka za većinu Linux distribucija.

Z Shell (zsh), prvi put objavljen 1990. godine, san korisnika naredbenog retka. Ne samo da ima većinu ostalih glavnih značajki koje imaju i druge školjke, on je suludo prilagodljiv s puno moćnih značajki. Jedno od najmoćnijih je rekurzivno globoliziranje, koje omogućava korisnicima da se podudaraju sa imenima datoteka u poddirektorijumima prilikom izdavanja naredbi, a ne datoteka u trenutnoj radnoj mapi. Stvarno napredni korisnici također mogu prilagoditi opcije dovršetka, slažući datoteke bez potrebe da ih ukucate u potpunosti. A za tipkarice s debelim prstima mogu popraviti i vaše pravopise. Ova je ljuska toliko napredna, da je njezina stranica s priručnicima podijeljena na nekoliko vrlo dugačkih odjeljaka.

Scripting

Kao što je ranije spomenuto, ljuske nisu samo sučelja naredbenog retka, već i moćni programski jezici. Ljepota skriptiranja školjki je u tome što možete koristiti isti jezik u redovnoj interaktivnoj upotrebi i u skriptama, što krivulju učenja čini mnogo laganijom. Moderne ljuske uključuju sve uobičajene značajke programskog jezika, uključujući kontrolu protoka, funkcije i varijable. Nekoliko njih čak ima napredne strukture podataka poput asocijativnih nizova.

Unatoč njihovoj moći, programiranje u školjkama ima nekoliko zamki. Najveći je problem što je previše lako pisati skripte koje ovise o nekom programu koji možda nije na nekom drugom sustavu ili koji ovisi o posebnom ukusu Unixa ili Linuxa. Zato su skripte školjki najprikladnije za programe za koje znate da se izvode samo u jednom sustavu. Ako pokušavate napraviti nešto prijenosno i ne želite pisati C program, najbolja je opklada napisati na drugom skriptnom jeziku poput Perl ili Python.

Zavirite pod haubu naredbenog retka Unix / Linux

Postoji više snage koja vreba ispod površine vašeg Unix / Linux naredbenog retka. Ovaj bi vas članak mogao potaknuti da zavirite ispod haube svoje omiljene školjke da vidite što stvarno možete učiniti. Ako se želite uključiti u skriptiranje školjaka, možda biste trebali provjeriti knjige Unix Power Tools i Learning Bash Shell. Originalni papir Stephena R. Bournesa na njegovoj ljusci služi i kao dobar uvod u svijet scenarija školjaka, čak i ako je star.