Podcast
Questions and Answers
Care dintre următoarele reprezintă o expresie regulată validă pentru un număr de telefon?
Care dintre următoarele reprezintă o expresie regulată validă pentru un număr de telefon?
Ce se înțelege prin globbing în contextul shell-ului?
Ce se înțelege prin globbing în contextul shell-ului?
Care dintre următoarele utilitare din shell suportă expresii regulate?
Care dintre următoarele utilitare din shell suportă expresii regulate?
Ce exprimă expresia regulată ^[:upper:]{1,10}$?
Ce exprimă expresia regulată ^[:upper:]{1,10}$?
Signup and view all the answers
Ce ar trebui să evităm atunci când folosim shell scripting pentru sarcini complexe?
Ce ar trebui să evităm atunci când folosim shell scripting pentru sarcini complexe?
Signup and view all the answers
Ce reprezintă un script shell?
Ce reprezintă un script shell?
Signup and view all the answers
Care dintre următoarele comenzi este considerată o comandă internă în shell scripting?
Care dintre următoarele comenzi este considerată o comandă internă în shell scripting?
Signup and view all the answers
Ce se recomandă să faci atunci când un script devine prea complicat?
Ce se recomandă să faci atunci când un script devine prea complicat?
Signup and view all the answers
Ce acțiune trebuie efectuată pentru a rula un script numit 'myscript.sh'?
Ce acțiune trebuie efectuată pentru a rula un script numit 'myscript.sh'?
Signup and view all the answers
Care dintre următoarele feedback-uri este corect cu privire la shell scripting?
Care dintre următoarele feedback-uri este corect cu privire la shell scripting?
Signup and view all the answers
Ce este 'command expansion' în contextul shell scripting?
Ce este 'command expansion' în contextul shell scripting?
Signup and view all the answers
De ce trebuie să acorzi atenție caracterelor speciale în scripturile shell?
De ce trebuie să acorzi atenție caracterelor speciale în scripturile shell?
Signup and view all the answers
Ce este abordarea 'quick’n’dirty' în contextul shell scripting?
Ce este abordarea 'quick’n’dirty' în contextul shell scripting?
Signup and view all the answers
Ce reprezintă shebang în contextul unui script?
Ce reprezintă shebang în contextul unui script?
Signup and view all the answers
Care este scopul principal al utilizării shell scripting-ului?
Care este scopul principal al utilizării shell scripting-ului?
Signup and view all the answers
Ce sunt comenzile 'head' și 'tail' utilizate în shell scripting?
Ce sunt comenzile 'head' și 'tail' utilizate în shell scripting?
Signup and view all the answers
Cum se numește operatorul utilizat pentru a lega comenzi într-un one liner?
Cum se numește operatorul utilizat pentru a lega comenzi într-un one liner?
Signup and view all the answers
Care dintre următoarele comenzi nu ar trebui folosită într-un script?
Care dintre următoarele comenzi nu ar trebui folosită într-un script?
Signup and view all the answers
Ce funcționalitate oferă comanda 'mdutil' în scripturile shell?
Ce funcționalitate oferă comanda 'mdutil' în scripturile shell?
Signup and view all the answers
Ce descrie termenul 'quick’n’dirty' în contextul shell scripting-ului?
Ce descrie termenul 'quick’n’dirty' în contextul shell scripting-ului?
Signup and view all the answers
Ce semnifică funcția de expandare a comenzilor în shell?
Ce semnifică funcția de expandare a comenzilor în shell?
Signup and view all the answers
Cum poți reutiliza un script shell?
Cum poți reutiliza un script shell?
Signup and view all the answers
Care este rolul variabilei $? în scripturile shell?
Care este rolul variabilei $? în scripturile shell?
Signup and view all the answers
Cum se construiește o instrucțiune if corectă în shell?
Cum se construiește o instrucțiune if corectă în shell?
Signup and view all the answers
Ce rol are $1, $2, ... în shell?
Ce rol are $1, $2, ... în shell?
Signup and view all the answers
Care este utilizarea corectă a instrucțiunii for în shell?
Care este utilizarea corectă a instrucțiunii for în shell?
Signup and view all the answers
Ce verifică instrucțiunea if test –f "$file"?
Ce verifică instrucțiunea if test –f "$file"?
Signup and view all the answers
Care este semnificația $PID în contextul proceselor?
Care este semnificația $PID în contextul proceselor?
Signup and view all the answers
Ce reușește să facă construcția while read?
Ce reușește să facă construcția while read?
Signup and view all the answers
Cum poate fi realizată preluarea outputului unei comenzi la intrarea standard a alteia?
Cum poate fi realizată preluarea outputului unei comenzi la intrarea standard a alteia?
Signup and view all the answers
Ce verifică instrucțiunea if test "$#" –ne 1?
Ce verifică instrucțiunea if test "$#" –ne 1?
Signup and view all the answers
Care este funcția principală a comenzii 'while' în contextul parsing-ului?
Care este funcția principală a comenzii 'while' în contextul parsing-ului?
Signup and view all the answers
Ce reprezintă metacaracterul '$' în expresiile regulate?
Ce reprezintă metacaracterul '$' în expresiile regulate?
Signup and view all the answers
Când este recomandat să nu folosești expresii regulate?
Când este recomandat să nu folosești expresii regulate?
Signup and view all the answers
Ce rol joacă funcțiile în shell scripting?
Ce rol joacă funcțiile în shell scripting?
Signup and view all the answers
Cum este structurat un script shell atunci când se folosește un proces de verifica dacă un program este activ?
Cum este structurat un script shell atunci când se folosește un proces de verifica dacă un program este activ?
Signup and view all the answers
Care este utilizarea principală a separatorului IFS în scripturile shell?
Care este utilizarea principală a separatorului IFS în scripturile shell?
Signup and view all the answers
Ce acțiune este realizată de comanda 'grep' din scriptul exemplificat?
Ce acțiune este realizată de comanda 'grep' din scriptul exemplificat?
Signup and view all the answers
Ce caracter este folosit pentru a semnala începutul unei linii în expresiile regulate?
Ce caracter este folosit pentru a semnala începutul unei linii în expresiile regulate?
Signup and view all the answers
Când este mai bine să se evite utilizarea expresiilor regulate?
Când este mai bine să se evite utilizarea expresiilor regulate?
Signup and view all the answers
Flashcards
Script Shell
Script Shell
O înșiruire de comenzi shell interpretate de shell.
Comenzi interne
Comenzi interne
Comenzi precum if, for, while, case, folosite în scripting.
Command expansion
Command expansion
Facilități shell prin care se extind comenzi sau variabile.
perspective scripting
perspective scripting
Signup and view all the flashcards
Rulare script
Rulare script
Signup and view all the flashcards
chmod
chmod
Signup and view all the flashcards
#!
#!
Signup and view all the flashcards
Documentare și exersare
Documentare și exersare
Signup and view all the flashcards
Expresii regulate
Expresii regulate
Signup and view all the flashcards
Globbing
Globbing
Signup and view all the flashcards
Utilitare shell
Utilitare shell
Signup and view all the flashcards
Lua
Lua
Signup and view all the flashcards
Metacaractere
Metacaractere
Signup and view all the flashcards
Pipe
Pipe
Signup and view all the flashcards
Variabile
Variabile
Signup and view all the flashcards
PID
PID
Signup and view all the flashcards
Numărul de parametri
Numărul de parametri
Signup and view all the flashcards
Construcția if
Construcția if
Signup and view all the flashcards
Instrucțiunea for
Instrucțiunea for
Signup and view all the flashcards
Ciclul while
Ciclul while
Signup and view all the flashcards
Verificarea fișierelor
Verificarea fișierelor
Signup and view all the flashcards
Parsing cu while read
Parsing cu while read
Signup and view all the flashcards
IFS
IFS
Signup and view all the flashcards
for vs while
for vs while
Signup and view all the flashcards
Funcții în Bash
Funcții în Bash
Signup and view all the flashcards
check_alive()
check_alive()
Signup and view all the flashcards
Când să nu folosești regex
Când să nu folosești regex
Signup and view all the flashcards
Metacaractere în regex
Metacaractere în regex
Signup and view all the flashcards
[...]
[...]
Signup and view all the flashcards
Shebang
Shebang
Signup and view all the flashcards
Shell Script
Shell Script
Signup and view all the flashcards
Automatizare
Automatizare
Signup and view all the flashcards
One liner
One liner
Signup and view all the flashcards
Comenzi de prelucrare
Comenzi de prelucrare
Signup and view all the flashcards
Comenzi de afișare
Comenzi de afișare
Signup and view all the flashcards
Expandarea comenzilor
Expandarea comenzilor
Signup and view all the flashcards
Task-uri repetitive
Task-uri repetitive
Signup and view all the flashcards
Filtre de text
Filtre de text
Signup and view all the flashcards
Study Notes
Cursul #6: Automatizarea sarcinilor. Shell Scripting
- Scopul cursului este automatizarea sarcinilor folosind Shell Scripting.
- O problemă comună este utilizarea expresiilor regulate, ceea ce poate duce la duble probleme.
- Shell Scripting este o succesiune de comenzi shell interpretate pe rând de shell.
- Include comenzi externe și interne precum
if
,for
,while
,case
. - Include facilități shell precum
command expansion
. - Shell scripting este o abordare
quick'n'dirty
atunci când problemele sunt complexe. - Se folosesc resurse și comenzi existente.
- Există diverse modalități de a rezolva o problemă, selectând cea mai bună soluție.
- Scriptul se rulează la nevoie, pentru simplitate și automatizare.
- Prelucrarea datelor include utilizarea filtrelor de text (head, tail, grep, cut, tr, awk, sed).
- Înlănțuirea de comenzi se face folosind operatorul pipe (
|
), și expandarea comenzilor.
Exemple de comenzi shell
- În rularea scriptului, se folosește
bash myscript.sh
pentru executare. - Scriptul trebuie să fie executabil, prin
chmod a+x myscript.sh
. - Linia
#! -> shebang
, indică interpretorul scriptului. - Un exemplu de shell script este
sudo mdutil -a -i off
, unde este oprit serviciul.
Variabile
- Variabilele în shell stochează valori de diferite tipuri.
- Variabilele
$?:
stochează codul de ieșire al ultimei comenzi. - Variabilele
$$:
stochează PID-ul procesului curent. - Variabilele
$#:
stochează numărul de parametri din linia de comandă. - Variabile precum
$1
,$2
, etc. reprezintă parametrii de pe linia de comandă.
Controlul fluxului
- Shell scripting include instrucțiuni de decizie (
if
,case
) și de ciclare (for
,while
).
Construcția if
if
este utilizată pentru testarea condițiilor.- Exemplu: verifică dacă un fișier există folosind
if test -f "$file"; then ... fi
Construcția for
- Ciclul
for
parcurge elemente dintr-o listă. - Un exemplu este parcurgerea utilizatorilor din sistem.
Construcția while
while read
este mai puternică decâtcut
dar mai slabă decâtawk
, pentru parsing de date.- Se folosește pentru extragerea datelor din fișiere.
Funcții
- Funcțiile shell sunt utilizate pentru gruparea mai multor acțiuni în blocuri de cod. Se apelează similar unui script.
- Exemplu:
check_alive()
pentru verificare funcționalitate script.
Expresii regulate
- Expresii regulate (regex) sunt folosite pentru căutarea (pattern matching) și validarea șirurilor de caractere.
- Sunt folosite pentru validarea unor intrări (ex. un număr de telefon, o adresă web).
Metacaractere
- Metacaractere speciale sunt utilizate în expresii regulate pentru specificarea anumitor secvențe de caractere sau pattern-uri.
Globbing versus Regex
- Globbing este o metodă simplă pentru extinderea numelor de fișiere, în timp ce expresiile regulate sunt mai puternice.
Suport expresii regulate
- Utilitare shell precum
grep
,awk
sised
suportă expresii regulate. - Limbaje de programare (Perl, Python, PHP, etc.) și editoare de text (Vim, Emacs).
- Baze de date pot sustine expresii regulate.
Sfaturi Shell Scripting
- Folosiți Shell Scripting doar pentru sarcini potrivite.
- Nu re-inventați roata. Folosiți scripturi și funcții existente.
- Folosiți ghilimele pentru variabile.
- Alegeți opțiunea potrivită (
cut
,grep
,awk
, etc.). - Folosiți expresii regulate.
Lua
- Un limbaj de programare de scripting.
- Este ușor de integrat în alte limbaje.
- API simplu pentru programare.
Cuvinte cheie
- Termeni cheie din Shell scripting, inclusiv variabile, variabile de mediu,
one line
, filtre de testare,script shell
, IFS,while read
, for siif
, inclusiv expresii regulate, si metacaractere.
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.
Related Documents
Description
Acest quiz testează cunoștințele despre expresiile regulate și utilizarea shell-ului. Vei răspunde la întrebări despre validitatea expresiilor pentru numerele de telefon, globbing și utilitarele din shell. Fii pregătit să evaluezi tehnicile de scripting utilizate în sarcini complexe.