01.12.2012 Views

Introducere în Linux Un ghid la îndemână - "Tille" Garrels

Introducere în Linux Un ghid la îndemână - "Tille" Garrels

Introducere în Linux Un ghid la îndemână - "Tille" Garrels

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

puternică, poate cu preţul unei sintaxe mai dificile. Dar comanda find din GNU se poate descurca cu<br />

problemele ridicate de sintaxă. Nu numai că vă permite căutarea după numele fişierelor, ci acceptă criterii ca<br />

mărimea fişierelor, data ultimei modificări precum şi alte proprietăţi ale fişierelor. Cea mai răspândită formă<br />

este cea prin care se caută fişiere:<br />

find -name <br />

Această expresie poate fi interpretată astfel: „Caută <strong>în</strong> toate subdirectoarele şi fişierele determinate<br />

de traseul dat şi afişează numele fişierelor care conţin <strong>în</strong> numele lor (nu <strong>în</strong> conţinutul acestora) criteriul de<br />

căutare introdus)”.<br />

Alt mod <strong>în</strong> care putem folosi comanda find este căutarea fişierelor de o mărime determinată, după<br />

cum se observă <strong>în</strong> exemplul de mai jos, <strong>în</strong> care utilizatorul peter doreşte să găsească toate fişierele din<br />

directorul curent sau din subdirectoarele acestuia care sunt mai mari de 5 MO:<br />

Dacă veţi căuta <strong>în</strong> paginile man, veţi af<strong>la</strong> că find poate executa anumite operaţii asupra fişierelor<br />

pe care le găseşte. Ca exemplu putem vorbi despre ştergerea fişierelor. Cel mai bine este să verificaţi dacă<br />

fişierul găsit este cel dorit de dumneavoastră, adică nu <strong>la</strong>nsaţi comanda file cu opţiunea de execuţie -exec,<br />

şi doar după aceea reintroduceţi comanda prin care ştergeţi fişierul respectiv. Mai jos vă prezentăm o<br />

căutare a fişierelor de tipul .tmp:<br />

Optimizaţi!<br />

Această comandă va ape<strong>la</strong> rm ori de câte ori este găsit un fişier ale cărui proprietăţi se potrivesc<br />

cu criteriile de căutare. În cel mai rău caz, pot fi zeci de mii sau milioane de fişiere. Acest lucru va determina<br />

<strong>în</strong>cărcarea sistemului.<br />

<strong>Un</strong> mod de lucru mai realist este folosirea unei conexiuni (pipe – I) şi a uneltei xargs împreună cu<br />

rm ca argument. În acest fel, comanda rm este ape<strong>la</strong>tă atunci când linia de comandă este plină, <strong>în</strong> loc să fie<br />

ape<strong>la</strong>tă <strong>la</strong> fiecare fişier găsit. Consultaţi Capitolul 5 pentru mai multe amănunte despre utilizarea<br />

redirecţionării I/O pentru a vă uşura sarcinile de zi cu zi.<br />

Mai târziu (<strong>în</strong> 1999, dacă ne luăm după paginile man, după 20 de ani de find), a fost dezvoltată<br />

comanda locate. Este un program mai uşor de utilizat, dar cu mai multe restricţii decât find, deoarece<br />

rezultatul afişat de această comandă este bazat pe un fişier care conţine un index al unei baze de date<br />

actualizată o singură dată pe zi. Pe de altă parte, o căutare <strong>în</strong> baza de date a comenzii locate foloseşte mai<br />

puţine resurse decât find, aşa că rezultatele sunt afişate aproape instantaneu.<br />

Cele mai multe distribuţii de <strong>Linux</strong> folosesc acum slocate, adică o căutare care ia <strong>în</strong> considerare şi<br />

aspecte legate de securitate, care nu permite utilizatorilor să aibă acces <strong>la</strong> un rezultat pe care nu au dreptul<br />

să-l citească. Fişierele din directorul personal al administratorului (root`s home directory) de exemplu, nu<br />

sunt, <strong>în</strong> mod normal, accesibile publicului. <strong>Un</strong> utilizator care doreşte să găsească pe cineva care foloseşte<br />

conso<strong>la</strong> C, poate introduce comanda locate .cshrc, pentru a i se afişa toţi utilizatorii care deţin un fişier<br />

personalizat pentru conso<strong>la</strong> C. Presupunând că utilizatorii root şi jenny folosesc conso<strong>la</strong> C, atunci numai<br />

fişierul /home/jenny/.cshcr va fi afişat, nu şi ace<strong>la</strong> din directorul personal al administratorului. Pe cele<br />

mai multe sisteme, locate este o legătură simbolică pentru programul slocate:<br />

Utilizatoarea tina poate să folosească locate pentru a găsi aplicaţia de care are nevoie, după cum<br />

vă este prezentat <strong>în</strong> imaginea următoare:<br />

51

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!