Bash este un interpretor de comenzi Unix scris inițial de către Brian Fox de la Fundația pentru Software Liber pentru Proiectul GNUgnu.org - GNU Bash Bash FAQ, version 4.13, for Bash version 4.3 .
Numele este un acronim, un joc de cuvinte și o descriere. Ca acronim, vine de la Bourne-again shell, referindu-se la obiectivul său ca înlocuitor liber pentru Bourne shell.C Programming by Al Stevens, Dr. Dobb's Journal, 1 iulie 2001 Ca joc de cuvinte, exprimă acest obiectiv intr-o formă ce sună similar cu sintagma naștere din nou. Numele descrie de asemenea realizarea sa, îngemănarea funcțiilor din sh, csh și ksh. Un defect de securitate denumit Shellshock, apărut de la versiunea 1.03, a fost descoperit în septembrie 2014.
Istorie Brian Fox a început să programeze Bash pe 10 ianuarie 1988, după ce Richard Stallman a devenit nemulțumit din cauza lipsei progresului unui programator anterior.
Generalități Pentru a scrie scripturi în Bash este necesar un editor de text. Exemple: Gedit, Nano, MidnightCommander Edit.
Un script în Bash trebuie obligatoriu să aibă prima linie de cod: #!/bin/bash, deoarece trebuie comunicat sistemului de operare ce interpretor de comenzi se utilizează.
Comentariile în Bash se fac utilizând caracterul urmator: #.
Informații suplimentare Bash este un limbaj de scripting compatibil cu comenzile de shell. El poate fi executat fie din input-ul standard, fie dintr-un fișier. Scripturile Bash sunt în realitate fișiere text făcute executabile, aceste fișiere putând fi editate cu orice editor de text. Aceste scripturi sunt folosite pentru a executa comenzi simple sau complexe.
Rulare Pentru a executa aplicația creată trebuie introdusă în consola urmatoarea comandă:
cd ~/Directorul unde se afla scriptul
bash nume_script.sh
Informații suplimentare Dacă doriți ca aplicatia să devina un executabil, atunci introduceți:
<code>chmod +x nume.sh</code>
Pentru pornire, dublu clic pe pictograma aplicației. O altă posibilitate este cea de a rula scriptul direct în consolă:
./nume.sh
Exemplu Exemplul „Hello World!”:
#!/bin/bash
clear
echo "Hello World!"
Utilizând comanda echo, avem posibilitatea de a afișa un text. În cazul nostru, "Hello World!", în traducere: "Salut lume!".
Comanda clear are rolul de a șterge conținutul ecranului, înlocuindu-l cu mesajul ales.
Informații suplimentare echo acceptă mai mulți parametri:
-e interpretează caracterul backslash
-E dezactivează interpretarea caracterului backslash
\a avertizare sonoră
\b șterge ultimul caracter afișat
\c șterge șirul de caractere care urmează această comandă
\n face trecerea la o linie nouă
\r are efectul apăsării tastei "Enter"
\t afișează caracterul "Tab"
Variabile In Bash există două tipuri de variabile, și anume: Definite de utilizator Variabilele sistemului
Pentru a vizualiza o listă cu toate variabilele sistemului, rulați în consola următoarea comandă:
set
Cum declarăm variabile in Bash?
Exemplu de variabile din sistem:
#!/bin/bash
echo "Salut $USER"
USER este o variabila ce îți afișează numele de utilizator al contului cu care ești autentificat.
Exemplu de variabilă definita de utilizator:
#!/bin/bash
nume=adrian
varsta=8
echo "Salut $nume, știu că ai $varsta!"
nume respectiv varsta sunt variabilele noastre. Utilizănd comanda echo, am afișat variabilele definite de noi.
Declarație de citire Această declarație este folosită pentru preluarea datelor de la utilizator prin intermediul tastaturii și memorarea datelor în variabile.
Exemplu:
#!/bin/bash
read nume
echo "Salutare $nume, ce faci?"
Mai precis, read acordă posibilitatea de a introduce un text de la tastatură. Condiția if Condiția if este o simplă comparație între două valori. Ea este folosită pentru luarea deciziilor în Bash.
Exemplu:
#!/bin/bash
if cat $1
then
echo "Fisierul $1 a fost gasit si afisat cu succes."
fi
Explicație: Dacă comanda cat găseste fișierul "$1" și îl afișează pe ecran, înseamnă că această comandă a fost executată cu succes și starea ei de exit este 0. Dacă însă comanda nu este executată cu succes, atunci valoarea stării de exit returnată de aceasta este diferită de zero și declarația: echo "Fisierul $1 a fost gasit si afisat cu succes." nu este executată de catre shell.
Note
Legături externe
Situl programului Bash
Categorie:GNU Categorie:Limbaje de scripting