mirror of
https://github.com/adambard/learnxinyminutes-docs.git
synced 2025-01-17 13:38:38 +01:00
Added bash/ro-ro translation
This commit is contained in:
parent
eb2a1422f7
commit
0e0ae337d4
171
ro-ro/bash-ro.html.markdown
Normal file
171
ro-ro/bash-ro.html.markdown
Normal file
@ -0,0 +1,171 @@
|
||||
---
|
||||
category: tool
|
||||
tool: bash
|
||||
contributors:
|
||||
- ["Max Yankov", "https://github.com/golergka"]
|
||||
- ["Darren Lin", "https://github.com/CogBear"]
|
||||
- ["Alexandre Medeiros", "http://alemedeiros.sdf.org"]
|
||||
- ["Denis Arh", "https://github.com/darh"]
|
||||
translators:
|
||||
- ["Adrian Bordinc", "https://github.com/ellimist"]
|
||||
lang: ro-ro
|
||||
filename: LearnBash-ro.sh
|
||||
---
|
||||
|
||||
Bash este numele shell-ului unix, care a fost de asemenea distribuit drept shell pentru pentru sistemul de operare GNU si ca shell implicit pentru Linux si Mac OS X.
|
||||
Aproape toate exemplele de mai jos pot fi parte dintr-un script sau pot fi executate direct in linia de comanda.
|
||||
|
||||
[Citeste mai multe:](http://www.gnu.org/software/bash/manual/bashref.html)
|
||||
|
||||
```bash
|
||||
#!/bin/bash
|
||||
# Prima linie din script se numeste "shebang" care spune systemului cum sa execute scriptul
|
||||
# http://en.wikipedia.org/wiki/Shebang_(Unix)
|
||||
# Dupa cum te-ai prins deja, comentariile incep cu #. Shebang este de asemenea un comentariu.
|
||||
|
||||
# Exemplu simplu de hello world:
|
||||
echo Hello world!
|
||||
|
||||
# Fiecare comanda incepe pe o linie noua, sau dupa punct si virgula ;
|
||||
echo 'Prima linie'; echo 'A doua linie'
|
||||
|
||||
# Declararea unei variabile se face astfel:
|
||||
VARIABLE="Niste text"
|
||||
|
||||
# DAR nu asa:
|
||||
VARIABLE = "Niste text"
|
||||
# Bash va crede ca VARIABLE este o comanda care trebuie executata si va
|
||||
# returna o eroare pentru ca nu va putea fi gasita.
|
||||
|
||||
# Folosind variabila:
|
||||
echo $VARIABLE
|
||||
echo "$VARIABLE"
|
||||
echo '$VARIABLE'
|
||||
# Atunci cand folosesti variabila, o atribui, o exporti sau altfel, numele ei se scrie fara $.
|
||||
# Daca vrei sa folosesti valoarea variabilei, atunci trebuie sa folosesti $.
|
||||
# Atentie la faptul ca ' (apostrof) nu va inlocui variabla cu valoarea ei.
|
||||
|
||||
# Inlocuirea de caractere in variabile
|
||||
echo ${VARIABLE/Some/A}
|
||||
# Asta va inlocui prima aparitie a "Some" cu "A" in variabila de mai sus.
|
||||
|
||||
# Substring dintr-o variabila
|
||||
echo ${VARIABLE:0:7}
|
||||
# Asta va returna numai primele 7 caractere din variabila.
|
||||
|
||||
# Valoarea implicita a unei variabile:
|
||||
echo ${FOO:-"ValoareaImplicitaDacaFOOLipsesteSauEGoala"}
|
||||
# Asta functioneaza pentru null (FOO=), sir de caractere gol (FOO=""), zero (FOO=0) returneaza 0
|
||||
|
||||
# Variabile pre-existente
|
||||
echo "Ulima valoare returnata de ultimul program rulat: $?"
|
||||
echo "ID-ul procesului (PID) care ruleaza scriptul: $$"
|
||||
echo "Numarul de argumente: $#"
|
||||
echo "Argumentele scriptului: $@"
|
||||
echo "Argumentele scriptului separate in variabile: $1 $2..."
|
||||
|
||||
# Citind o valoare din consola
|
||||
echo "Care e numele tau?"
|
||||
read NAME # Observa faptul ca nu a trebuit sa declaram o variabila noua
|
||||
echo Salut, $NAME!
|
||||
|
||||
# Avem obisnuita instructiune "if"
|
||||
# Foloseste "man test" pentru mai multe informatii despre instructinea conditionala
|
||||
if [ $NAME -ne $USER ]
|
||||
then
|
||||
echo "Numele tau este username-ul tau"
|
||||
else
|
||||
echo "Numele tau nu este username-ul tau"
|
||||
fi
|
||||
|
||||
# Este de asemenea si executarea conditionala de comenzi
|
||||
echo "Intotdeauna executat" || echo "Executat numai daca prima instructiune esueaza"
|
||||
echo "Intotdeauna executat" && echo "Executat numai daca prima instructiune NU esueaza"
|
||||
|
||||
# Expresiile apar in urmatorul format
|
||||
echo $(( 10 + 5 ))
|
||||
|
||||
# Spre deosebire de alte limbaje de programare bash este un shell - asa ca
|
||||
# functioneaza in contextul directorului curent. Poti vedea fisiere si directoare
|
||||
# din directorul curent folosind comanda "ls":
|
||||
ls
|
||||
|
||||
# Aceste comenzi au optiuni care la controleaza executia
|
||||
ls -l # Listeaza fiecare fisier si director pe o linie separata
|
||||
|
||||
# Rezultatele comenzii precedente poate fi trimis urmatoarei comenzi drept argument
|
||||
# Comanda grep filtreaza argumentele trimise cu sabloane. Astfel putem vedea fiserele
|
||||
# .txt din directorul curent.
|
||||
ls -l | grep "\.txt"
|
||||
|
||||
# De asemenea poti redirectiona o comanda, input si error output
|
||||
python2 hello.py < "input.in"
|
||||
python2 hello.py > "output.out"
|
||||
python2 hello.py 2> "error.err"
|
||||
# Output-ul va suprascrie fisierul daca acesta exista.
|
||||
# Daca vrei sa fie concatenate poti folosi ">>"
|
||||
|
||||
# Comenzile pot fi inlocuite in interiorul altor comenzi folosind $( ):
|
||||
# Urmatoarea comanda afiseaza numarul de fisiere si directoare din directorul curent
|
||||
echo "Sunt $(ls | wc -l) fisiere aici."
|
||||
|
||||
# The same can be done using backticks `` but they can't be nested - the preferred way
|
||||
# is to use $( ).
|
||||
# Acelasi lucru se poate obtine folosind apostrf-ul inversat ``, dar nu pot fi folosite
|
||||
# unele in interiorul celorlalte asa ca modalitatea preferata este de a folosi $( )
|
||||
echo "Sunt `ls | wc -l` fisiere aici."
|
||||
|
||||
# Bash foloseste o instructiune 'case' care functioneaza in mod similar cu instructiunea
|
||||
# switch din Java si C++
|
||||
case "$VARIABLE" in
|
||||
0) echo "Este un zero.";;
|
||||
1) echo "Este un unu.";;
|
||||
*) echo "Nu este null";;
|
||||
esac
|
||||
|
||||
# Instructiunea for parcurge toate elementele trimise:
|
||||
# Continutul variabilei $VARIABLE este printat de 3 ori
|
||||
for VARIABLE in {1..3}
|
||||
do
|
||||
echo "$VARIABLE"
|
||||
done
|
||||
|
||||
# while loop:
|
||||
while [true]
|
||||
do
|
||||
echo "in interiorul iteratiei aici..."
|
||||
break
|
||||
done
|
||||
|
||||
# De asemenea poti defini functii
|
||||
# Definitie:
|
||||
function foo ()
|
||||
{
|
||||
echo "Argumentele functioneaza ca si argumentele scriptului: $@"
|
||||
echo "Si: $1 $2..."
|
||||
echo "Asta este o functie"
|
||||
return 0
|
||||
}
|
||||
|
||||
# sau mai simplu
|
||||
bar ()
|
||||
{
|
||||
echo "Alta metoda de a declara o functie"
|
||||
return 0
|
||||
}
|
||||
|
||||
# Invocarea unei functii
|
||||
foo "Numele meu este: " $NAME
|
||||
|
||||
# Sunt o multime de comenzi utile pe care ar trebui sa le inveti:
|
||||
tail -n 10 file.txt
|
||||
# printeaza ultimele 10 linii din fisierul file.txt
|
||||
head -n 10 file.txt
|
||||
# printeaza primele 10 linii din fisierul file.txt
|
||||
sort file.txt
|
||||
# sorteaza liniile din file.txt
|
||||
uniq -d file.txt
|
||||
# raporteaza sau omite liniile care se repeta, cu -d le raporteaza
|
||||
cut -d ',' -f 1 file.txt
|
||||
# printeaza doar prima coloana inainte de caracterul ","
|
||||
```
|
Loading…
x
Reference in New Issue
Block a user