User Tools

Site Tools


unixmix:capitole:capitol-07
Differences

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

Link to this comparison view

unixmix:capitole:capitol-07 [2014/07/02 06:56]
tpopeea [Variabile]
unixmix:capitole:capitol-07 [2014/09/12 10:09] (current)
razvan [Afișare fișiere executabile pentru procese]
Line 1: Line 1:
 = Interpretorul bash = = Interpretorul bash =
 +
 +[[https://docs.google.com/presentation/d/1btwpQIcgu5F9Upw0EKD7ufhzgLycuacE3q07N-_f_6w/pub?start=false&loop=false&delayms=3000|Slide-uri de prezentare]]
  
 == Tutorial == == Tutorial ==
Line 19: Line 21:
 ** Nu este suficient? Mai tastați un <TAB> să vedeți opținile pe care le aveți. ** Nu este suficient? Mai tastați un <TAB> să vedeți opținile pe care le aveți.
 ** Mai adăugați o literă ('c') și tastați <TAB> pentru a completa cu numele directorului. ** Mai adăugați o literă ('c') și tastați <TAB> pentru a completa cu numele directorului.
-* Creți în directorul curent (~/Documents) o ierarhie de directoare //~/Documents/These/are/not/the/droids/you/are/looking/for///.+* Creți în directorul curent (~/Documents) o ierarhie de directoare ''~/Documents/These/are/not/the/droids/you/are/looking/for/''.
 ** Rulăti comanda ''mkdir These/are/not/the/droids/you/are/looking/for/''. ** Rulăti comanda ''mkdir These/are/not/the/droids/you/are/looking/for/''.
 ** Nu merge? De ce? Căutați în pagina de manual al lui mkdir (''mkdir'') informații despre parametrul **-p**. ** Nu merge? De ce? Căutați în pagina de manual al lui mkdir (''mkdir'') informații despre parametrul **-p**.
Line 45: Line 47:
 === Scurtături la tastatură === === Scurtături la tastatură ===
  
-**Modificare în mașina virtuală pentru ca exercițiile să meargă**:+**Este posibil să fie nevoie de următoarea modificare în terminal pentru ca exercițiile să meargă**:
 * Din meniul gnome-terminal accesați Edit -> Keyboard shortcuts. * Din meniul gnome-terminal accesați Edit -> Keyboard shortcuts.
 * Dezactivați cele două opțiuni din ferastra nouă. * Dezactivați cele două opțiuni din ferastra nouă.
Line 193: Line 195:
 ls -lah $OUTPUT ls -lah $OUTPUT
 </code> </code>
 +
 +
 +== Recapitulare ==
 +
 +# Afișați fișierele din directorul ''/bin'' sortat în ordinea dimensiunii fișierelor. Folosiți-vă de comanda ''stat'' și de opțiunea de formatare a acesteia (''-c'' sau ''%%--%%format'').
 +# Afișați linie sub linie directoarele conținute de variabila de mediu ''PATH''.
 +# Afișați fișierele din ierarhia ''/usr/include'' în ordinea numărului de apariții ale **cuvântului** ''FILE''. Folosiți ''grep'' cu opțiunile aferente și apoi ''sort''. **Indicație**: Căutați în pagina de manual a lui ''grep'' după, respectiv, ''recursive'', ''count'' și ''word''.
 +# Afișați interfețele și adresele IP ale sistemului în formatul ''eth0,141.85.37.225'', linie sub linie. **Soluție și exemplu de rulare**:<code>
 +razvan@einherjar:~$ /sbin/ifconfig | awk -F '[ :]+' '/Link encap/ {printf "%s,", $1;} /inet addr/ {printf "%s\n", $4;}' 
 +docker0,172.17.42.1
 +eth0,172.16.14.167
 +lo,127.0.0.1
 +vboxnet0,virbr0,192.168.122.1
 +</code>
 +
 +=== Afișare caractere speciale ===
 +
 +Inițializați variabila ''text'' la un șir de caractere.
 +
 +Afișați la ieșirea standard mesajul //"Variabila text are valoarea '"...'". Valorea poate fi actualizata."//. În mesaj, toate caracterele ghilimele (''"'') și apostrof (''%%'%%'') se vor afișa întocmai.
 +
 +=== Afișare fișiere localizate ===
 +
 +Folosiți comanda ''locate'' pentru a afișa fișierele din sistem care au extensia ''.conf''.
 +
 +Pentru fișierele de mai sus afișați directoarele din care fac parte. Eliminați duplicatele.
 +
 +<note tip>
 +Folosiți comanda ''dirname'' pentru extragerea directoarelor.
 +</note>
 +
 +Pentru directoarele de mai sus afișați numele directorului și inode-ul, separate prin virgulă ('','').
 +
 +<note tip>
 +Folosiți comanda ''stat''.
 +</note>
 +
 +Sortați directoarele de mai sus în ordinea inode-ului. Afișați numele directorului și inode-ul (separate prin virgulă ('','')).
 +
 +=== Afișare fișiere executabile pentru procese ===
 +
 +Afișați procesele al căror proces părinte este ''init'', procesul cu PID-ul ''1''.
 +
 +Pentru procesele de mai sus afișați **doar** comanda completă.
 +
 +Filtrați doar acele comenzi care încep cu ''/'' (adică este calea completă către executabil).
 +
 +Selectați **doar** calea către executabil, fără argumente către acesta.
 +
 +Pentru executabilele de mai sus afișați numele și timpul ultimei schimbării (//change time//), separate prin virgulă ('','').
 +
 +<note tip>
 +Folosiți comanda ''stat''.
 +</note>
 +
 +Sortați executabilele de mai sus în ordinea timpului ultimei schimbări.
 +
 +<note tip>
 +Sortarea poate fi simplă, nu este nevoie de sortare numerică. Formatul datei afișat de ''stat'' permite sortare de orice fel.
 +</note>
 +
 +=== Creare fișiere ===
 +
 +Creați 100 de fișiere cu numele "myfile-XY.txt", unde ''XY'' este indexul fișierului între ''00'' și ''99''.
 +
 +<note tip>
 +Folosiți comenzile ''seq'' și ''touch''.
 +</note>
 +
 +<note tip>
 +Ca model folosiți-vă de comanda<code>
 +seq -f "%02g" 1 100
 +</code>
 +</note>
 +
unixmix/capitole/capitol-07.1404273395.txt.gz · Last modified: 2014/07/02 06:56 by tpopeea