This shows you the differences between two versions of the page.
uso:laboratoare:laborator-08:basics [2021/11/14 11:51] andreea.nica1602 [sort & uniq] |
uso:laboratoare:laborator-08:basics [2021/11/26 03:34] (current) mihai_daniel.soare [tr & sed] |
||
---|---|---|---|
Line 133: | Line 133: | ||
Utilitarul **tr** permite translatarea, ștergerea și manipularea caracterelor primite la intrare. | Utilitarul **tr** permite translatarea, ștergerea și manipularea caracterelor primite la intrare. | ||
- | După cum am văzut în [[:uso:laboratoare:laborator-05|laboratorul precedent]], **sed** este un **stream editor** ce poate efectua transformări la nivel de string asupra unui text primit la intrare. În plus, sed poate primi expresii regulate ca argument de căutare. | + | Practic, **sed** este un **stream editor** ce poate efectua transformări la nivel de string asupra unui text primit la intrare. În plus, sed poate primi expresii regulate ca argument de căutare. |
| | ||
<note> | <note> | ||
Line 364: | Line 364: | ||
</spoiler> | </spoiler> | ||
- | Pașii de mai sus puteau fi realizați și cu ajutorul comenzii ''cut''. Dar, în cazul parsării folosind construcția ''while read'' avem două avantaje: | + | Pașii de mai sus puteau fi realizați și cu ajutorul comenzii ''cut''. Dar în cazul parsării folosind construcția ''while read'' avem două avantaje: |
* putem afișa coloanele în ce ordine dorim; ''cut'' permitea afișarea de coloane doar în ordinea din fișierul de intrare; | * putem afișa coloanele în ce ordine dorim; ''cut'' permitea afișarea de coloane doar în ordinea din fișierul de intrare; | ||
* putem prelucra în continuare, în cadrul construcției ''while read'' informația parsată. Spre exemplu, afișarea poate avea forma %%"Studentul ... face parte din grupa ..."%%. | * putem prelucra în continuare, în cadrul construcției ''while read'' informația parsată. Spre exemplu, afișarea poate avea forma %%"Studentul ... face parte din grupa ..."%%. |