28.05.2013 Views

LOA HackLab - Autistici

LOA HackLab - Autistici

LOA HackLab - Autistici

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.

Trovare file con which, find e locate 51<br />

$ find ~/ -name "*.tex"<br />

/home/tx0/LaTeX/corsoUnix/corsoUnix.tex<br />

/home/tx0/LaTeX/corsoUnix/storia_Unix.tex<br />

/home/tx0/LaTeX/corsoUnix/regexpr.tex<br />

/home/tx0/LaTeX/corsoUnix/la_shell.tex<br />

/home/tx0/LaTeX/corsoUnix/piu_in_alto.tex<br />

$<br />

find lista il nome di ciascun file soddisfi i criteri di ricerca. Avrete notato che il<br />

pattern di ricerca è stato incluso in una coppia di virgolette. Questo accorgimento serve a<br />

evitare che la shell interpoli l’asterisco espandendolo in tutti i nomi dei file della directory<br />

corrente. L’asterisco fà infatti parte del pattern passato a find e non è un metacarattere<br />

per la shell.<br />

Altro caso: vogliamo cercare tutti i file nella nostra directory che sono leggibili, scrivibili<br />

ed eseguibili per noi. 2<br />

$ find ~/ -perm 700<br />

/home/tx0/bin/logger<br />

/home/tx0/bin/script.pl<br />

/home/tx0/bin/send_mail<br />

/home/tx0/bin/parser.pl<br />

$<br />

Abbiamo trovato un buon numero di file. Vogliamo sapere ora quali sono anche<br />

eseguibili al nostro gruppo ed al resto degli utenti della macchina.<br />

$ find ~/ -perm +777<br />

/home/tx0/bin/script.pl<br />

/home/tx0/bin/send_mail<br />

$<br />

Attenzione al più!! Il simbolo + indica a find che un file corrisponde ai criteri di ricerca<br />

se qualsiasi combinazione dei bit di stato coincide con quella espressa. Questo significa<br />

che nonsolo saranno positivi i file con permessi 755, ma anche quelli con permessi 700,<br />

quelli con permessi 750, 754, 755 e anche 007! 3<br />

L’utilizzo del più ci permette di giocare con le combinazioni imponendo dei limiti a<br />

quali elementi possono essere usati per costruire la combinazione senza però obbligare<br />

la presenza di alcuno di essi. Ad esempio +755 consente di usare i permessi -rwxrxr-x<br />

ma non ne richiede nessuno in particolare quindi include -rwx------, include pure<br />

-rwxr-x--x e -r-xr-xr--.<br />

L’utilizzo di un meno al posto di un più inverte invece il significato: i permessi<br />

specificati sono tutti richiesti. Potrebbe sorgere il dubbio che il meno sia equivalente<br />

all’omissione di qualsiasi segno, ma così non è. Infatti find ~/ -perm 700 cerca solo i<br />

file -rwx------, mentre find ~/ -perm -700 cerca i file che abbiano permessi rwx per<br />

il proprietario, senza imporre limiti sugli altri permessi, quindi trova anche -rwxrwx--- e<br />

-rwxr-xr-x ma non i file -r-xr-xr-x ad esempio in quanto questi non hanno permessi<br />

rwx per il proprietario.<br />

2 Ricordiamo che la lettura vale 4, la scrittura vale 2 e l’esecuzione vale 1, quindi 7 per tutti<br />

e tre gli attributi<br />

3<br />

A dispetto della combinazione, questi file saranno ben poco segreti! :-)

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

Saved successfully!

Ooh no, something went wrong!