Shell skriptovanje:
Linux koristi shell. Takodjer, Linux koristi i GUI odnosno graficki interfejs izmedju operativnog sistema i korisnika. Na GUI smo jako dobro navikli jer se susrecemo s njim svakodnevno. Medjutim, Linux je najjaci kada govorimo o terminalu odnosno unosu komandi kako bi korisnik komunicirao sa operativnim sistemom efikasno, brzo, automatizovano...
Svi korisnici koji zele da iskoriste punu moc i snagu Linuxa, koristice terminal odnosno shell program. Shell daje potpunu kontrolu korisniku nad operativnim sistemom. Bitno je znati da postoji vise vrsta shell programa a prvi koji se koristio u UNIX operativnim sistemima naziva se Bourne shell. Nakon njega, Linux nam donosi vise vrsta shell-ova tako da sada imamo sljedece:
- sh - Bourne shell
- csh - C shell
- ksh - Korn shell
- tcsh - poboljsani C shell
- bash - GNU Bourne again shell
- zsh - ekstenzija za bash, ksh, i tcsh
- pdksh - ekstenzija za ksh
Ovo ne moramo znati, mislim da nas niko nikad nece pitati koje sve shell-ove imamo danas, medjutim lijepo je barem procitati i znati da su oni tu. Mi cemo koristiti iskljucio bash - GNU Bourne again shell
Koje zadatke shell izvrsava kada ukucamo tekst, on mora rasclaniti komandu i izvrsiti radnju nad tom komndom. Sta moze uraditi? Moze citati tekst i rasclaniti komandu, procjenjivanje specijalnih karaktera unutar komande i izvrsavanje odredjene radnje na tim karakterima, obrada signala, pokretanje programa, i slicno.
Da provjerimo koji shell Linux koristi, kucamo sljedecu komandu i OS nam izbacuje rezultat da taj Linux koristi bash shell.

Sada cemo provjeriti koja bash verzija je podrzana na ovom OS-u. To radimo komandom bash -version

Fajlovi u Linuxu:
Za razliku od Windowsa, kada pricamo o nazivima fajlova u Linux distribucijama, folder pod nazivom Tools i tools su dva razlicita foldera. Linux-u je jako bitno da li folder pocinje sa malim ili velikim slovom.
Kada kreiramo fajl i ukoliko ime tog fajla ima vise rijeci, pravilno je imenovati taj fajl koristeci donju crtu kako bi povezali rijeci npr.
Pravilno: mrezni_administrator.txt
Nepravilno: mrezni administrator.txt
Jedna od mnogih genijalnih "izuma" u Linux distribucijama koristeci terminal jeste TAB completion opcija koja omogucava da koristeci tipku TAB na tastaturi, automatski ispise naziv fajla u tom direktorijumu. Npr. ukoliko zelimo otvoriti fajl u jednom direktorijumu kucamo $ cat mrezni_admi i nakon toga udaramo tipku TAB koja ce automatski ispisati naziv tog fajla u $ cat mrezni_administrator.txt. Ukoliko se taj fajl ne nalazi u direktorijumu, TAB completion opcija nece raditi jer taj fajl ne postoji.
Osnovne komande u Linuxu:
ls - Koristi se za prikazivanje sadrzaja u direktorijumu.

Kao sto vidimo, prikazali smo sve foldere/direktorijume koji se nalaze u /home/. Pretezno, plava boja oznacava da je to direktorijum i da u njega mozemo uci. Ukoliko taj direktorijum u sebi ima jos foldera ili fajlova, mozemo ih prikazati komandom ls.
Bitna stvar za znati kod Linuxa, jeste da svaka komanda podrzava odredjene argumente tj. koristeci osnovnu komandu, unosimo dodatne parametre koji uticu na tu komandu. Na primjer, komanda ls podrzava argument -l koji ce izlistati sadrzaj direktorijuma na ljepsi i organizovaniji nacin.

Postoji jako jako mnogo ovakvih parametara koje ls podrzava. Recimo da zelimo poredati sadrzaj fajla hronoloski i to radimo parametrom -t (time). Takodjer, mozemo kombinovati dva parametra i ako zelimo da ih poredamo vremenski i izlistamo, onda cemo kucati ls -lt

pwd - prikazuje trenutnu poziciju gdje se nalazimo u sistemu
Jako lagana i jednostavna komanda, cisto nam prikazuje gdje se trenutno nalazimo u Linux sistemu.

Sta smo sad uradili? Prvo smo kucali komandu ls koja nam je prikazala sadrzaj /root direktorijuma. Zatim smo kucali pwd i prikazuje nam da se nalazimo u /root direktorijumu nakon cega mozemo birati gdje dalje zelimo uci. Ja sam odabrao da otvorimo folder Downloads i to radimo komandom cd (change directory) nakon cega kucamo ime direktorijuma. Sada kada se nalazimo u folderu Downloads, kucamo pwd i vidimo da pise da se nalazimo u /root/Downloads.
Ako zelimo ici unazad, npr. da se vratimo nazad u /root kucamo cd .. (change directory [razmak] dvije tacke).
mkdir - kreiranje novog direktorijuma/foldera
Jednostavno receno, komandom mkdir Mujo kreiramo novi folder.

Sta smo napravili?
- ls - prikazujemo sadrzaj foldera
- mkdir Mujo - kreirano novi prazan folder
- ls - prikazujemo sadrzaj foldera i vidimo da folder Mujo postoji
- cd Mujo - mijenjamo direktorijum i ulazimo u folder Mujo
- ls - prikazujemo sadrzaj foldera Mujo
- touch passwords.txt - kreiramo file (ne folder), kreiramo fajl passwords.txt
- ls - prikazujemo sadrzaj foldera Mujo i vidimo da imamo novi fajl.
Komanda touch kreira nove fajlove, recimo ako zelimo napraviti fajl usernames.txt, koristimo komandu touch.
cp - kopiranje jednog fajla u drugi folder

ls - prikazujemo sadrzaj foldera
cd Mujo - odlazimo u folder Mujo
ls -la - prikazujemo sadrzaj foldera Mujo
cp passwords.txt Mujo1 - kopiramo fajl passwords.txt u folder Mujo1
cd Mujo1 - odlazimo u folder Mujo1
ls -la - prikazujemo sadrzaj foldera Mujo1
Uspjesno smo kopirali fajl passwords.txt u drugi folder :)
rm - Brisanje fajla
Ukoliko zelimo da obrisemo fajl iz direktorijuma, koristimo komandu rm (remove)

To su bile osnovne komande koje se korite u Linux operativnim sistemima. Za pocetak bice dovoljno, nastavljamo dalje u sljedecem postu gdje cemo praviti prvu skriptu :)