====== 7. Utilitare și funcționalități practice ======
În afară de utilitarele clasice de lucru cu procese și fișiere sau de investigare a sistemului, o latură mai largă de funcționalități pot fi realizate în linia de comandă. Motivația folosirii liniei de comandă pentru astfel de activități ține de posibilitatea de automatizare și scalarea ușoară a unei comenzi la un număr foarte mare de fișiere/intrări/conexiuni etc. prin rularea repetată a comenzii (eventual într-un script).
===== Subiecte abordate =====
* //A task for each tool and a tool for each task.//
* Use the best tool for the best job.
==== Utilitare folosite ====
* ''inkscape''
* ''inxi''
* ''dstat''
* ''convert''
* ''ctags''
==== Slide-uri ====
[[http://koala.cs.pub.ro/training/res/medium-unix/slides/cap-07.pdf|Slide-uri capitol 7]]
===== Exerciții =====
==== Conversie fișiere SVG în format PNG și PDF ====
Descărcați 2 fișiere format SVG de pe Internet și folosiți ''inkscape'' în linia de comandă pentru a converti acele fișiere în alte fișiere format PNG și format PDF. Fiecare fișier de intrare în format SVG să aibă două fișiere de ieșire: unul în format PNG și altul în format PDF.
==== Folosire ctags pentru a parcurge sursele unui program ====
Descărcați sursele utilitarului ''nmap''. Folosiți [[http://andrew.stwrt.ca/posts/vim-ctags|ctags și vim]] pentru a naviga în cadrul [[https://nmap.org/dist/?C=M&O=D|surselor utilitarului ''nmap'']] (descărcați fișierul ''nmap-6.47.tgz'').
Clonați [[https://github.com/rosedu/wouso|repository-ul wouso]]. Folosiți [[http://andrew.stwrt.ca/posts/vim-ctags|ctags și vim]] pentru a naviga în cadrul surselor. Căutați întâi clasa ''Question'', apoi clasa ''Answer'', apoi clasa ''Challenge''.
==== inxi ====
Folosiți [[http://www.binarytides.com/inxi-system-information-linux/|inxi]] pentru a afișa informații despre partițiile sistemului. Apoi folosiți-l și pentru a afișa informații despre procesor, memorie și rețea.
==== Monitorizare sistem ====
Pentru a afișa într-un format simplu informații despre monitorizarea sistemului puteți folosi utilitarul dstat.
Folosiți comanda ''sudo iostat'' pentru a afișa informații despre consumul de I/O al sistemului.
==== Conversie imagine ====
Folosiți utilitarul ''convert'' din cadrul pachetului ''imagemagick'' pentru a converti un fișier imagine ''.jpg'' într-un fișier ''.png'' și pentru a-i reduce dimensiunea cu ''50%''.
Instalați în prealabil pachetul ''imagemagick'' folosind comanda
sudo apt-get install imagemagick
==== Schimbare parolă pentru un utilizator ====
Folosiți comanda de mai jos pentru a adăuga un utilizator în sistem, în mod neinteractiv (adică nu vă cere parole sau alte informații)
useradd -m -d /home/radu -s /bin/bash radu
Pentru a genera o parolă pentru un utilizator folosiți comanda ''pwgen''. Generați o parolă cu de 12 caractere care să conțină și cel puțin o cifră și un caracter special. Rețineți parola în variabila ''pw''.
Folosiți comanda ''chpasswd'' pentru a schimba parola reținută în variabila ''pw'' pentru utilizatorul ''radu''.