Risposte:
findricerche nel sistema reale. È più lento ma sempre aggiornato e ha più opzioni (dimensioni, tempo di modifica, ...)
locateutilizza un database (comando updatedb) precedentemente creato . È molto più veloce, ma utilizza un database "più vecchio" e cerca solo nomi o parti di essi.
In ogni caso, man finde man locateti aiuterà ulteriormente.
updatedbfare all'incirca qualcosa del genere find / -type f | gzip > locate.gz.
Entrambi i comandi locatee findtroveranno un file, ma funzionano in modi abbastanza diversi.
locate funzionerà in modalità offline:
locate, utilizzerà quel database per cercare un determinato file. Il problema locateè che se hai appena creato un file che ora vuoi cercare, individuare non funzionerà perché il database slocate non è aggiornato. Per ovviare a questo problema, è possibile utilizzare updatedbper aggiornare il database slocate . L'esecuzione di locatenuovo ora troverà il file appena creato. Pertanto, molti amministratori di sistema Linux utilizzano un cronlavoro per aggiornare regolarmente il database slocate .find funzionerà in modalità online / "in tempo reale".
Quindi, in base alla natura, è chiaro che individuare è più veloce di trovare ma trovare è in tempo reale.
Spero che questo possa aiutare a chiarire l'idea. Ti auguro il meglio. :)
Un'alternativa all'utilizzo di find è il comando Locate. Questo comando è spesso più veloce e può facilmente cercare nell'intero file system. È possibile installare il comando con apt-get:
sudo apt-get update
sudo apt-get install mlocate
Il motivo per cui individuare è più veloce di find è perché si basa su un database dei file sul filesystem. Il database viene in genere aggiornato una volta al giorno con uno script cron, ma è possibile aggiornarlo manualmente digitando:
sudo updatedb
Esegui questo comando ora. Ricorda che il database deve essere sempre aggiornato se vuoi trovare file acquisiti o creati di recente.