4 važne vrste skripti školjki za novorođenče Linux (korisno)

Sadržaj:

Anonim

Izvor slike: pixabay.com

Shell Scripting in Linux - Računala općenito razumiju jezik 0 i 1 koji je poznat kao binarni jezik. Prije desetljeća ljudi su pisali programe i programe poput kalkulatora na binarnim jezicima. Ali to nije bilo lijepo. Samo zamisli! Želite izračunati 73 + 96, kako biste napisali? Morate radije izračunati binarni cijeli broj za 73 i 96, a zatim ih dodati. Osoba mora biti prilično glupa da to učini. Radije bi izračunali 73 i 96 na papiru i krenuli dalje. Ali to je za manji dio. Što ako morate izračunati nešto poput (19273/23 * (2967 3)). Rekao bih sada da je to prilično intenzivno.

Dakle, neizostavni čovjek koji uči kodirati sve na binarnom jeziku nema smisla. To je glavni razlog zašto računala nisu bila popularna 70-ih i 80-ih. No kasnije, čak i prije nego što je razvijen Windows, ljudi su počeli razvijati kernele i slične stvari koje su činile srž operativnog sustava. Kerneli su koristili za razumijevanje ljudskog čitljivog formata određenog programa, a zatim ga pretvorili u strojni kod. Tu su se pojavili programski jezici i promijenili cijelu eru računalnog svijeta. Aplikacije su izrađene u C i C ++, a kasnije i Java, Python, Ruby i Perl.

Do sada postoji više od 50 programskih jezika. A to je najmanje onih o kojima znam. A kamoli činjenica da postoje i drugi programski jezici koje je još teže razumjeti od strojnih kodova. Moje su mišljenje, primjeri poput pilećeg programiranja i Malbolgea. Oni su neke ozbiljne gadne stvari s kojima se treba nositi.

Shell programiranje… .errr… Skripta?

Možda se pitate zašto nisam gore spomenuo Shell programiranje zajedno s ostalim programskim jezicima. Glavni razlog što sam Shell nije programski jezik. To je skriptni jezik. Shell je samo korisnički krajnji interaktivni program koji tumači bilo koji ulaz od korisnika i daje rezultat pod uvjetom da je naredba valjana. Zatim program prosljeđuje u kernel da ga izvrši. Shell nije dio Kernela, ali umjesto toga koristi kernel za obavljanje posla i izradu datoteka.

Vrste programa skriptiranja školjaka

Sada, za razliku od C, C ++ ili Java, postoji nekoliko drugih vrsta školjki koje se mogu koristiti za Shell Scripting. Slijede četiri vrste školjki do danas dostupne:

Ne.Vrsta školjkeOpis
1.Bash aka Bourne opet ShellOvo je najčešća školjka dostupna na svim Linux i debian sustavima. To je open source i besplatni program.
2.CSH ili C ShellOvaj programski skripti Shell koristi sintaksu ljuske C programiranja i gotovo je sličan C.
3.KSH ili Korn ShellKorn je Unixov scenarijski program za školjke, u početku zasnovan na scenariju Bash Shell. Ova je ljuska prilično napredna i programski jezik visoke razine.
4.tcshNe postoji specifičan puni oblik TCSH-a. Ona je takva kakva jest. TCSH je napredna inačica Berkeley Unix C školjke. Opet podržava sintaksu u stilu C

Što se današnjeg dana tiče, ovdje nas sve gore navedene školjke ne zanimaju. Zanima nas samo školjka Bash, jer je ona najčešće korištena školjka na svijetu danas.

Bash školjka

Scenaristički program Bash Shell skriptni je jezik visoke razine, sličan jeziku pythona. Ali ako ste imali iskustva s Python-om prije, onda ćete zapravo ustanoviti da je Bash Shell Scripting daleko jednostavniji od bilo kojeg drugog skriptnog jezika. Može se pisati skripte u bash mnogo brže nego na C, C ++, Java ili Python. Zadani terminal u današnjem većini Linux okruženja, recimo za primjerice: - Ubuntu, Linux Mint Cinnamon / Rafaela, Fedora, Arch Linux ili bilo koje drugo debijsko okruženje sastoji se od Bash-a kao zadanog Shell-a. No možete provjeriti sva okruženja školjki prisutna u vašem sustavu tako da u zadani terminal upišete sljedeće: -

$ cat / etc / školjke

(Napomena: Znak dolara na početku se koristi za označavanje terminala.)

Sintaksa "mačka" koja se koristi za čitanje tekstualnih datoteka. Vrste programa skriptiranja ljuske u okruženju Linux, Unix ili Debian pohranjuju se u datoteku ljuske unutar direktorija itd . Svaka ljuska ima svoj jedinstveni skup sintaksa i vlastiti skup ugrađenih funkcija. DOS ili prozori također imaju svoju ljusku poznatu kao zloglasni „naredbeni redak“ ili „moćna školjka“ od prozora 8.1 pa nadalje, ali još uvijek nisu tako moćni kao udarci. Mačka sintaksa dat će vam popis školjki dostupnih u sustavu, no kako biste pronašli zadanu školjku ili provjerili trenutnu uporabu školjke, u terminalu skripte za skrivanje školjki možete upotrijebiti sljedeću sintaksu: -

$ echo $ SHELL

Sintaksa 'eho' koristi se za ispis bilo koje izjave. Ovdje je 'SHELL' varijabla dodijeljena za ispis trenutne ljuske. Znak dolara nakon "odjeka" koristi se za predstavljanje varijable u Shell Scriptingu.

Preporučeni tečajevi

  • Tečaj certificiranja u hibernaciji Jave
  • Proljetni tečaj Java
  • WordPress online obuka
  • Rubinski trening

Pisanje školjaka

Dakle, sada znate što je školjka, pogledajmo Shell Scripting i zašto je tako poznat. Shell Scripting nije ništa drugo nego niz naredbi u jednostavnoj tekstnoj datoteci koja završava ekstenzijom '.sh'. ".Sh" određuje da se radi o izvršnoj datoteci školjke. Nakon pisanja skripte školjke, potrebno je promijeniti izvršno dopuštenje pomoću 'chmod funkcije'. Prema zadanim postavkama, sve novostvorene ljuske nisu izvršne u UNIX ili Linux okruženju osim ako se posebna dopuštenja ne promijene. Shell Scripting je gotovo sličan onome iz Batch programa u sustavu Windows, ali razlika je u tome što je Shell Scripting prilično moćniji i pruža mnogo više naprednog interaktivnog okruženja zajedno s dovršetcima kartica. Za pisanje skripte školjke potrebno je koristiti dobar uređivač teksta. Nekoliko boljih onih koje znam su Vim, Gedit i Leafpad.

Za razliku od ostalih programskih jezika, skripte Shell-a brže su za pisanje i izvršavanje. Ne morate preuzimati nikakve određene pakete ili ovisnosti da biste ih izvršili. Može ih koristiti ne samo administrator sustava, već i obična osoba za svakodnevno izvršavanje automatiziranih skripti. Slijedi jednostavan primjer skripte napisane ovdje.

#! / bin / bash echo -e "Dobrodošli u prvi program školjke. \ n" echo -e "Ovdje napišite nešto, a ovaj će program ponovo ispisati isto. \ n" # pitajući korisnika za unos pročitani unos # čitanje unosa od korisnika odjekuje "Vi uneseno: $ input ” izlaz 0

Dopustite mi da objasnim sve parametre u gornjem kodu. Prije svega, napišite gornji kôd u tekstualnu datoteku u obliku "kakav jest" i spremite ga s nastavkom koji završava s ".sh". Na primjer, ime datoteke dodijelite kao "main_program.sh". Provjerite je li to 'main_program.sh.txt'. Većina početnika obično čini isto, a to se tada ne može izvršiti. Kad se gornji kôd kopira, promijenite svoja dopuštenja koristeći sljedeću sintaksu u terminalu: -

$ chmod + x main_program.sh ILI $ chmod 755 main_program.sh

Slobodno upotrijebite bilo koju od navedenih naredbi jer obje rade isto. U suvremenim programima skriptiranja bash ljuske, '755' se mijenja u '+ x'; pa nije važno koji zapravo koristite. Nakon što ste promijenili dopuštenja, upišite sljedeće da biste ga izvršili.

$. / main_program.sh

Period i kosa crta koriste se za identificiranje i izvršavanje skripti školjki. Jednom kada izvršite gornju skriptu, ona će ispisati prvu izjavu eha, a zatim će tražiti da unesete nešto. Jednom kad ga unesete, ispisat će vam istu stvar i izaći iz prevoditelja. Dopustite mi da objasnim sve gore navedene sintakse. '#! / Bin / bash' služi tumačenju tumača da je ovo bash skripta i da se Bash shell program skripti nalazi u direktoriju 'bin'. Naredba 'echo' koristi se za ispis bilo koje izjave, a zastavica '-e' koristi se za označavanje ljuske da će biti ili novi redak koji je identificiran kao 'kosa crta n ili \ n' ili crta sljepnice t ili \ t 'ili sličnosti unutar odjeka izjave. Hash dio u drugom retku koristi se za identificiranje komentara u bash skripti. Što god napišete nakon hash-a komentira se i neće se izvršiti. Ali to se ne odnosi na "#! / Bin / bash" u prvom retku. Ovako treba raditi na skriptu. Sintaksa 'čitanje' koristi se za čitanje bilo kojeg unosa od korisnika. A 'ulaz' koji sam spomenuo nakon sintakse 'pročitaj' je varijabla u koju se pohranjuje ulaz od korisnika. Umjesto ulaza, može se koristiti bilo koja varijabla. U drugom zadnjem retku, unos $ koristi se da se identificira kao varijabla i objavi pohranjeni ulaz unutar nje. Konačno naredba izlaza koristi se za izlaz iz tumača s čistom nulom izlaza.

Neinteraktivno skriptiranje

Sada je gornji primjer jednostavno sasvim jednostavan. Ali postoje ugrađeni moduli koje možete koristiti umjesto da sve unose date sami. Slijedi dio koda koji ispisuje korisničko ime koje je trenutno prijavljeno, trenutačno vrijeme, datum kalendara i broj prijava: -

#! / bin / bash # Ova skripta ispisat će trenutačno prijavljene podatke o korisniku, broj korisnika koji su prijavljeni, datum, vrijeme i kalendar eho "Pozdrav, US USER" eho "Današnji datum i vrijeme je` datum` " eho" Broj korisnika prijavljenih: `ko | wc -l` ”

odjek “Kalendar”

cal

izlaz 0

Izvršite ovu skriptu nakon promjene dopuštenja datoteke gore. Pa, možda se pitate da smo u prethodnoj skripti ustvari unijeli unos, a zatim vratili ulaz koristeći th varijablu. Ali ovdje nismo unijeli nikakav ulaz unutar varijable 'US USER', pa kako onda ispisuje točnog korisnika. Glavni razlog što su ove stvari su već konfigurirane u sustavu. Sjetite se da sam vam rekao o $ SHELL ranije na početku, kako je to definirano prema zadanom? Da, sličan je slučaj ovdje sa US USER-om. Što se tiče datuma, ako samo unesete datum, bez termina na njemu, ispisat će se točan datum i vrijeme. Upravo sam upotrijebio jedan citat (`) da se identificiram kao sintaksa, a ne kao dio odjeka. Pojedini citat (`) izvršit će svaku sintaksu otisnutu unutar nje, bilo u izjavi ili bilo gdje drugo. Što se tiče broja korisnika, naredba "tko" koristi se za provjeru trenutnih korisnika koji su prijavljeni zajedno s prijavljenim procesima i datumom i vremenom kada je započet. Ali što se gornje naredbe tiče, zapravo sam je skratio da bih samo iznio broj korisnika koji su je zabilježili pomoću naredbe 'wc -l'. Šipka (|) ili ono što je popularno poznato kao cijev koristi se za kombiniranje dviju naredbi. Cijev zapravo stoji puno više od toga, ali ovdje neću ulaziti u puno detalja. I na kraju sam ispisao kalendar pomoću 'cal' ugrađene naredbe za ispis trenutnog datuma u kalendaru.

Izlazna nula

Izlazna nula je nešto što nisam objasnio ni u jednom od gore napisanih programa. Glavni razlog što je 'Exit Zero' ima puno veću težinu od bilo koje od gore navedenih sintaksa u Shell Scriptingu. Prema zadanim postavkama, kad god izvršite skriptu u distribuciji Linux ili Unix, vraća dvije vrste vrijednosti ili određenije status izlaza kako bi provjerio je li izvedba skripte školjke uspješna ili ne. Ako vrati vrijednost kao Nula, tada je izvršenje bilo uspješno, inače se nije izvršilo ili je došlo do pogreške tijekom izvršavanja. Dakle, tipkanjem u 'izlaz 0' na kraju bilo koje skripte provjerava se stanje izvršenja skripte.

Sve stvari koje sam ovdje opisao su samo najmanji osnovni dio skripta Shell-a u distribuciji Linux. Dio izlaza i cijev imaju važnu ulogu prilikom izvršavanja višestrukih skripti školjki u Linux naredbama i koriste ga zajedno s uvjetnim izjavama if i else.

Povezani članci:-

Evo nekoliko članaka koji će vam pomoći da saznate više detalja o vrstama skripti školjke za Linux početnike pa samo prođite vezu.

  1. Intervjuska pitanja skriptiranja Shell | Top 10 korisnih pitanja
  2. Linux vs Windows - Pronađite 9 najneverovatnijih razlika
  3. Linux pitanja i odgovori za intervju | Korisno i najtraženije
  4. Karijere u administraciji Linuxa
  5. Pravila i propisi parametara skripti školjki