Lecții din modul (1/2)
Ieșire și redirecționări (ecou, pisică, >)
În Linux, aproape toate comenzile citesc date dintr-un flux de intrare și scriu rezultate într-un flux de ieșire. Aceste canale sunt numite fluxuri standard:
- Standard Input (stdin): Fluxul din care comanda își citește intrarea (implicit este tastatura).
- Ieșire standard (stdout): Fluxul în care comanda își scrie rezultatul cu succes (implicit este ecranul terminalului).
- Eroare standard (stderr): Fluxul în care comanda își scrie mesajele de eroare (implicit este ecranul).
Folosind linia de comandă, putem redirecționa aceste fluxuri pentru a salva rezultatele direct în fișiere.
Se imprimă text: echo
Comanda echo își scrie pur și simplu argumentele în ieșirea sa standard (ecran):
echo "Hello everyone"Redirecționarea ieșirii (suprascriere): >
Dacă doriți să salvați rezultatul unei comenzi într-un fișier în loc să o afișați pe ecran, puteți utiliza operatorul de redirecționare mai mare decât >:
echo "Hello everyone" > greetings.txtAceastă comandă rulează echo și își redirecționează rezultatul către fișierul greetings.txt.
[!IMPORTANT] Dacă fișierul
greetings.txtnu există, acesta este creat. Dacă există deja, conținutul său existent este complet șters și suprascris cu noua ieșire.
Citirea conținutului fișierului: cat
Pentru a vizualiza conținutul unuia sau mai multor fișiere text din mers, utilizați comanda cat (prescurtare de la concatenate):
cat greetings.txtAdăugarea ieșirii: >>
Dacă doriți să adăugați linii noi la sfârșitul unui fișier existent, în loc să îl suprascrieți, trebuie să utilizați operatorul de adăugare >>:
echo "New line of text" >> greetings.txtAcum, citirea fișierului cu cat greetings.txt va afișa atât prima linie, cât și a doua linie.
Exemple de utilizare și erori comune
Puteți transmite mai multe fișiere către cat în același timp pentru a le afișa secvențial (concatenat):
cat notes.txt info.txt
# Output:
# Keep learning Linux!
# Linux is awesome.Puteți redirecționa rezultatul combinat către un al treilea fișier folosind operatorul >:
cat notes.txt info.txt > combined.txtDacă încercați să citiți un fișier care nu există, cat va scrie un mesaj de eroare:
cat nonexistent_file.txt
# Output:
# cat: nonexistent_file.txt: No such file or directoryÎncercați-l singur
Exercițiul 1: Creați un fișier cu un salut
Creați un fișier numit „hello.txt” care să conțină exact textul „Hello World” folosind echo și operatorul >.
Afișează indiciu
Utilizați echo urmat de șirul între ghilimele, operatorul > și hello.txt.
Soluție disponibilă după 3 încercări
Exercițiul 2: Adăugați note la un fișier
Adăugați linia „Linux is fun” la sfârșitul fișierului „notes.txt” existent fără a șterge conținutul actual.
Afișează indiciu
Utilizați operatorul >> pentru a adăuga text la fișierul notes.txt.
Soluție disponibilă după 3 încercări
Exercițiul 3: Concatenează fișiere
Concatenați conținutul fișierelor „notes.txt” și „info.txt” și salvați rezultatul combinat într-un fișier nou numit „combined.txt”.
Afișează indiciu
Utilizați cat urmat de numele celor două fișiere sursă și redirecționați rezultatul cu > către fișierul destinație.
Soluție disponibilă după 3 încercări