Razumijevanje Linux shell-a i savjete o osnovnom skriptnom jeziku shell-a - I. dio


Slike govore više od riječi, a slika ispod govori sve o radu Linuxa.

Pročitajte također

  1. 5 skripti ljuske za učenje programiranja ljuske – II. dio
  2. Plovidba kroz svijet Linuxa BASH skriptiranje – dio III

Razumijevanje Linux Shell-a

  1. Shell: Tumač naredbenog retka koji povezuje korisnika s Operativnim sustavom i omogućuje izvršavanje naredbi ili stvaranje tekstualne skripte.
  2. Proces: Svaki zadatak koji korisnik pokrene u sustavu naziva se proces. Proces je malo složeniji od običnog zadatka.
  3. Datoteka: nalazi se na tvrdom disku (hdd) i sadrži podatke u vlasništvu korisnika.
  4. X-windows aka windows: Način Linuxa u kojem se zaslon (monitor) može podijeliti u male “dijelove” koji se nazivaju windows<, koji korisniku omogućuju da radi nekoliko stvari u isto vrijeme i/ili se lako prebacuje s jednog zadatka na drugi i lijepo pregledava grafiku.
  5. Tekstualni terminal: monitor koji ima samo sposobnost prikazivanja teksta, bez grafike ili vrlo jednostavan grafički prikaz.
  6. Sesija: vrijeme između prijave uključivanja i odjave iz sustava.

Vrste ljuske u standardnoj distribuciji Linuxa

Bourneova ljuska: Bourneova ljuska bila je jedna od glavnih ljuski korištenih u ranim verzijama i postala je de facto standard. Napisao ju je Stephen Bourne iz Bell Labs. Svaki sustav sličan Unixu ima barem jednu ljusku kompatibilnu s Bourneovom ljuskom. Naziv Bourne shell programa je “sh” i obično se nalazi u hijerarhiji datotečnog sustava na /bin/sh.

C shell: C shell je razvio Bill Joy za Berkeley Software Distribution. Sintaksa mu je modelirana prema programskom jeziku C. Prvenstveno se koristi za interaktivnu upotrebu terminala, ali rjeđe za skriptiranje i kontrolu operativnog sustava. C ljuska ima mnogo interaktivnih naredbi.

Početak zabave! (Linux Shell)

Postoje tisuće naredbi za korisnika naredbenog retka, kako bi bilo da ih sve zapamtite? Hmmm! Jednostavno ne možete. Prava moć računala je da vam olakša rad, morate automatizirati proces i stoga su vam potrebne skripte.

Skripte su zbirke naredbi pohranjene u datoteku. Ljuska može čitati ovu datoteku i djelovati na naredbe kao da su upisane na tipkovnici. Ljuska također nudi niz korisnih značajki programiranja kako bi skripte bile uistinu moćne.

Osnove programiranja ljuske

  1. Da biste dobili Linux ljusku, trebate pokrenuti terminal.
  2. Da vidite koju ljusku imate,pokrenite: echo $SHELL.
  3. U Linuxu znak dolara ($) označava varijablu ljuske.
  4. Naredba ‘echo’ samo vraća sve što upišete.
  5. Instrukcija cjevovoda (|) dolazi u pomoć, kada se povezuje nekoliko naredbi.
  6. Linux naredbe imaju vlastitu sintaksu, Linux vam neće oprostiti nikakve pogreške. Ako dobijete pogrešnu naredbu, nećete pasti ili oštetiti ništa, ali neće raditi.
  7. #!/bin/sh – Zove se shebang. Napisan je na vrhu skripte ljuske i prosljeđuje upute programu /bin/sh.

O shell skripti

Shell skripta samo je jednostavna tekstualna datoteka s ekstenzijom “.sh” koja ima dopuštenje za izvršavanje.

Proces pisanja i izvršavanja skripte

  1. Otvori terminal.
  2. Dođite do mjesta gdje želite stvoriti skriptu pomoću naredbe ‘cd’.
  3. Cd (unesite) [Ovo će dovesti upit u Vaš kućni imenik].
  4. dodirnite hello.sh (Ovdje smo skriptu nazvali hello, zapamtite da je ekstenzija '.sh' obavezna).
  5. vi hello.sh (nano hello.sh) [Možete koristiti svoj omiljeni uređivač za uređivanje skripte].
  6. chmod 744 hello.sh (čini skriptu izvršnom).
  7. sh hello.sh ili ./hello.sh (pokretanje skripte)
Pisanje vašeg prvog scenarija
#!/bin/bash
My first script

echo "Hello World!"

Spremite gornje retke u tekstualnu datoteku, učinite je izvršnom i pokrenite je, kao što je gore opisano.

Uzorak izlaza

Hello World!

U gornjem kodu.

#!/bin/bash (is the shebang.)
My first script (is comment, anything following '#' is a comment)
echo “Hello World!” (is the main part of this script)
Pisanje vašeg drugog scenarija

U redu, vrijeme je za prijelaz na sljedeću skriptu. Ova skripta će vam reći vaše “korisničko ime” i navesti pokrenute procese.

#! /bin/bash
echo "Hello $USER"
echo "Hey i am" $USER "and will be telling you about the current processes"
echo "Running processes List"
ps

Napravite datoteku s gornjim kodovima, spremite je na što god želite, ali s ekstenzijom “.sh“, učinite je izvršnom i pokrenite je sa svog terminala.

Uzorak izlaza

Hello tecmint
Hey i am tecmint and will be telling you about the current processes
Running processes List
  PID TTY          TIME CMD
 1111 pts/0    00:00:00 bash
 1287 pts/0    00:00:00 sh
 1288 pts/0    00:00:00 ps

Je li ovo bilo super? Pisanje skripte jednostavno je poput dobivanja ideje i pisanja naredbi u cjevovodu. Postoje i neka ograničenja. Shell skripte izvrsne su za koncizne operacije datotečnog sustava i skriptiranje kombinacije postojeće funkcionalnosti u filtrima i alatima naredbenog retka putem cijevi.

Kada su vaše potrebe veće – bilo da se radi o funkcionalnosti, robusnosti, performansama, učinkovitosti itd. – tada možete prijeći na potpuniji jezik.

Ako već znate C/Perl/Python programski jezik ili bilo koji drugi programski jezik, učenje skriptnog jezika neće biti teško.

Pisanje vašeg trećeg scenarija

Prelazimo na pisanje našeg trećeg i posljednjeg scenarija za ovaj članak. Ova skripta djeluje kao interaktivna skripta. Zašto ne biste sami izvršili ovu jednostavnu, ali interaktivnu skriptu i rekli nam kako ste se osjećali.

#! /bin/bash
echo "Hey what's Your First Name?";
read a;
echo "welcome Mr./Mrs. $a, would you like to tell us, Your Last Name";
read b;
echo "Thanks Mr./Mrs. $a $b for telling us your name";
echo "*******************"
echo "Mr./Mrs. $b, it's time to say you good bye"

Uzorak izlaza

Hey what's Your First Name?
Avishek
welcome Mr./Mrs. Avishek, would you like to tell us, Your Last Name
Kumar
Thanks Mr./Mrs. Avishek Kumar for telling us your name
******************************************************
Mr./Mrs. Kumar, it's time to say you good bye

Pa ovo nije kraj. Pokušali smo vam približiti okus pisanja scenarija. U našem budućem članku razradit ćemo ovu temu skriptnog jezika, radije beskrajnu temu o skriptnom jeziku, kako bismo bili savršeniji. Vaše vrijedne misli u komentarima visoko cijenimo, lajkajte i podijelite nas i pomozite nam da se širimo. Do tada samo opustite se, ostanite povezani, ostanite s nama.

Pročitajte također: 5 Shell skripti za učenje programiranja Shella – II. dio