GNU/Linux >> Linux Esercitazione >  >> Linux

Esiste un comando UNIX per elencare tutti i file rimossi di recente da un sistema

I sistemi *nix in genere hanno un locate utilità installata. Ha un database, di solito aggiornato ogni notte, che contiene i nomi di (quasi) tutti i file sul tuo sistema. Basta eseguire:

locate /path/to/dir/of/interest

e dovresti vedere un elenco di file che erano in quella directory dall'ultimo aggiornamento del database. Puoi confrontare questo con l'elenco corrente.

Poiché verrà sovrascritto automaticamente con una nuova versione, è possibile eseguire ora una copia di backup di quel database. Sui sistemi influenzati da Debian, è memorizzato in /var/lib/mlocate/mlocate.db .

Come mostrare i file mancanti

  1. Fai un backup del vecchio database:

    cp /var/lib/mlocate/mlocate.db ~/old.db
    
  2. Aggiorna la banca dati. Il comando per eseguire questa operazione può variare. Su un sistema simile a Debian, prova:

    sudo /etc/cron.daily/mlocate
    
  3. Ottieni il nuovo e il vecchio elenco di file per la tua directory:

    locate -d ~/old.db /your/dir | sort >~/old.list
    locate /your/dir | sort >~/new.list
    
  4. Ottieni un elenco di tutti i file nuovi e mancanti:

    diff ~/old.list ~/new.list
    

Note aggiuntive

  • Non tutti i file sono elencati nel database di locate. Un file di configurazione, tipicamente /etc/updatedb.conf , determina quali file e directory sono esclusi.

  • In passato ho utilizzato alcune versioni di locate che, per impostazione predefinita, elencherebbe solo i file che esistono ancora. Se questo è il caso del tuo locate , ti consigliamo di disattivare quella funzione.


Linux
  1. Impossibile rimuovere i file dalla directory con l'errore "Elenco di argomenti troppo lungo"

  2. Elenca tutti i montaggi in Linux

  3. Escludi elenco di file da find

  4. Come elencare i file eliminati di recente da una directory?

  5. Come elencare tutti i file in una condivisione di rete Windows SMB

Comando Ls in Linux (Elenca file e directory)

4 comandi per spegnere Linux dal terminale

Come elencare i file in modo ricorsivo in Linux

Come elencare tutti gli utenti di un gruppo in Linux

comando ls in Linux/UNIX

Esiste un comando Unix/Linux per contare le righe al secondo da stdin?