User Tools

Site Tools


school:uso:labs:shell_scripting_2

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
school:uso:labs:shell_scripting_2 [2009/08/09 18:10]
razvan
school:uso:labs:shell_scripting_2 [2009/08/09 19:07]
razvan
Line 310: Line 310:
 ==== Enunț ==== ==== Enunț ====
  
-Folosiți ''grep'' pentru a elimina alias-urile cu destinația de forma ''nume.prenume@gmail.com'' din fișierul ''aliases''. Intrările din fișierul ''aliases'' se consideră de forma ''alias: destinație''.+Folosiți ''grep'' pentru a selecta alias-urile cu destinația de forma ''nume.prenume@gmail.com'' din fișierul ''aliases''. Intrările din fișierul ''aliases'' se consideră de forma ''alias: destinație''.
  
 ==== Pași ajutători ==== ==== Pași ajutători ====
  
-* Folosiți ''grep'' pentru a elimina liniile ce conțin șirul ''gmail''(Hint: ''-v'') +* Folosiți ''grep'' pentru a selecta liniile ce conțin șirul ''gmail''
-* Folosiți ''grep'' pentru a elimina liniile ce conțin șirul ''gmail.com''. (Hint: folosiți ''\'' pentru citare) +* Folosiți ''grep'' pentru a selecta liniile ce conțin șirul ''gmail.com''. (Hint: folosiți ''\'' pentru citare) 
-* Folosiți ''grep'' pentru a elimina liniile ce conțin cuvântul ''gmail.com''. (Hint: ''\<'' și ''\>''+* Folosiți ''grep'' pentru a selecta liniile ce conțin cuvântul ''gmail.com''. (Hint: ''\<'' și ''\>''
-* Folosiți ''grep'' pentru a elimina liniile ce conțin cuvântul ''gmail.com'' în destinație. +* Folosiți ''grep'' pentru a selecta liniile ce conțin cuvântul ''gmail.com'' în destinație. (Hint: dacă folosiți ''+'' acesta trebuie citat cu ''\'' pentru a avea rol în expresia regulată - unul sau mai multe caractere) 
-* Folosiți ''grep'' pentru a elimina liniile ce conțin șirul-cuvânt ''nume.prenume@gmail.com'' în destinație.+* Folosiți ''grep'' pentru a selecta liniile ce conțin șirul-cuvânt ''nume.prenume@gmail.com'' în destinație. (**Atenție**: intrarea ce conține ''j.r.r.tolkien@gmail.com'' este invalidă)
  
 === grep, awk, sort, uniq === === grep, awk, sort, uniq ===
Line 330: Line 330:
  
 {{{ {{{
-cat lista.txt | awk -F '[ \t]+' "{ print "prenume:", $1, "nume:", $2; }" +cat lista.txt | awk -F '[ \t]+' '{ print "nume:", $1, "prenume", $2; }' 
-cat /etc/passwd | awk -F ':' "{ print "nume: $1", "home:", $6; }"+cat /etc/passwd | awk -F ':' '{ print "nume:", $1, "home:", $6; }'
 }}} }}}
  
Line 343: Line 343:
 ==== Enunț ==== ==== Enunț ====
  
-* Fișierul ''mail.txt'' conține mesaje trimise de un utilizator. Creați un script ''dest_sort.sh'' care sortează mesajele trimise de un utilizator după destinatari; se vor afișa adresa de e-mail a destinatarului și numărul de mesaje transmise de acesta.+* Fișierul ''sent_mail.txt'' conține mesaje trimise de un utilizator. Creați un script ''dest_sort.sh'' care sortează mesajele trimise de un utilizator după destinatari; se vor afișa adresa de e-mail a destinatarului și numărul de mesaje transmise de acesta.
  
 ==== Pași ajutători ==== ==== Pași ajutători ====
  
-* Creați scriptul ''dest_sort.sh'' și folosiți ''grep'' pentru a extrage din fișierul ''mail.txt'' liniile care specifică destinatarul (liniile care încep cu ''To:'').+* Creați scriptul ''dest_sort.sh'' și folosiți ''grep'' pentru a extrage din fișierul ''sent_mail.txt'' liniile care specifică destinatarul (liniile care încep cu ''To:'').
 * Folosiți înlănțuirea comenzilor (''|'') și ''awk'' pentru a extrage **doar** adresa de e-mail a destinatarului. * Folosiți înlănțuirea comenzilor (''|'') și ''awk'' pentru a extrage **doar** adresa de e-mail a destinatarului.
 * Folosiți înlănțuirea comenzilor (''|'') și ''sort'' pentru a sorta adresele de e-mail ale destinatarilor. * Folosiți înlănțuirea comenzilor (''|'') și ''sort'' pentru a sorta adresele de e-mail ale destinatarilor.
Line 360: Line 360:
 ==== Enunț ==== ==== Enunț ====
  
-* Fișierul ''mail.txt'' conține mesaje trimise de un utilizator. Creați un script ''dest_sort.sh'' care script care sortează mesajele trimise de un utilizator în funcție de data la care au fost transmise; se vor afișa data de transmitere a mesajului și numărul de mesaje transmise la acea dată.+* Fișierul ''sent_mail.txt'' conține mesaje trimise de un utilizator. Creați un script ''dest_sort.sh'' care script care sortează mesajele trimise de un utilizator în funcție de data la care au fost transmise; se vor afișa data de transmitere a mesajului și numărul de mesaje transmise la acea dată.
  
 ==== Pași ajutători ==== ==== Pași ajutători ====
  
-* Creați scriptul ''date_sort.sh'' și folosiți ''grep'' pentru a extrage din fișierul ''mail.txt'' liniile care specifică data (liniile care încep cu ''Date:'').+* Creați scriptul ''date_sort.sh'' și folosiți ''grep'' pentru a extrage din fișierul ''sent_mail.txt'' liniile care specifică data (liniile care încep cu ''Date:'').
 * Folosiți înlănțuirea comenzilor (''|'') și ''awk'' pentru a extrage **doar** data de transmitere a mesajului. * Folosiți înlănțuirea comenzilor (''|'') și ''awk'' pentru a extrage **doar** data de transmitere a mesajului.
 * Folosiți înlănțuirea comenzilor (''|'') și ''sort'' pentru a sorta datele mesajelor. * Folosiți înlănțuirea comenzilor (''|'') și ''sort'' pentru a sorta datele mesajelor.
school/uso/labs/shell_scripting_2.txt · Last modified: 2020/07/20 09:16 (external edit)