# Comandi per la ricerca `find` é utilizzato per ricercare file su Linux. Per cercare solo nella directory corrente, si deve usare `maxdepth 1`. Il parametro `-mount` puo' essere usato per evitare che *find* scenda all'interno dei filesystem montati. Per limitare la ricerca a specifici filesystem, si utilizza invece il parametro `-fstype`. ## find: attributi di ricerca - `-user USERNAME`: corrisponde al file di proprietá dell'utente USERNAME - `-group GROUPNAME`: del gruppo GROUPNAME - `-readable/-writable/executable`: corrisponde ai file leggibili, scrivibili o eseguibili dall'utente corrente - `-perm NNN`: tutti i file che hanno esattamente l'autorizzazione NNN - `-empty`: file e directory vuote - `-size -N`: si utilizzano i prefissi `+` o `-`, che stanno per *piú grande di* o *piú piccolo di*. Per esempio `-size -10M` corrisponde a qualsiasi file di dimensioni inferiori ai 10MB. ## find: ricerche temporali - `-amin N`, `-cmin N`, `-mmin N`: per trovare file a cui é stato effettuato l'*a*ccesso, , che hanno attributi modificati o che sono stati *m*odificati N minuti fa rispettivamente - `-atime N`, `-ctime N`, `-mtime N`: per trovare file a cui é stato effettuato l'*a*ccesso, , che hanno attributi modificati o che sono stati *m*odificati N*24 ore fa ## locate A differenza di find, `locate` non cercherá il pattern nel filesystem, ma lo cerca in un database costruito eseguendo il comando `updatedb`. Cio' fornisce risultati molto rapidi, ma che potrebbero essere imprecisi, a seconda dell'ultimo aggiornamento del db. ## Trovare i binari `which` é un comando utile che mostra il percorso completo di un eseguibile. `type` é un comando simile, che mostra informazioni su un binario, incluso il suo percorso e il su tipo.