Mostra i file degli ultimi 2 giorni su un sistema NTFS montato?


8

Qual è esattamente il comando per mostrare i file meno di 2 giorni? Ho pensato a qualcosa del genere:

$ find / -mtime -2

... ma non sono sicuro di come stampare la data dei file trovati. Il mio obiettivo è trovare file su un sistema NTFS montato che siano nuovi o modificati negli ultimi giorni.

Inoltre sarebbe molto utile ordinare i risultati dal più recente al più vecchio. È possibile?


Se modifichi la tua domanda per chiedere qualcos'altro, dovresti almeno informare coloro che hanno risposto con fiducia che la loro risposta non è più valida, dal momento che i nuovi visitatori voteranno principalmente sulla loro esperienza attuale e non sui difficili da esaminare la storia. Inoltre, aggiungere ulteriori requisiti in un secondo momento è un cattivo stile IMHO. Apri una nuova domanda per questo. Tenendo presenti i requisiti, le persone potrebbero aver scelto un approccio diverso.
utente sconosciuto

È stato solo un errore di ortografia nel testo della mia domanda. L'argomento stesso era corretto. Nel corpo, ho scritto "più giovane" anziché "più vecchio". Anche il mio esempio di codice non è stato modificato. Ma fondamentalmente hai ragione.
Bevor

Risposte:


10

File creati o modificati meno di 48 ore fa
ordinati dal più recente al meno recente:

find / -mtime -2 -printf "%T@" -ls | sort

Ho trovato %T@da man find: ora ultima modifica (secondi dall'epoca)


Mi piacerebbe vedere la data dei file trovati, non solo i file stessi. Ho aggiornato anche la domanda, perché sarebbe molto utile ordinare i risultati dal più recente al meno recente.
Bevor

L'ultimo comando è quello che sto cercando, grazie.
Bevor

Avevo bisogno di "meno di" 2 giorni, quindi da oggi a due giorni prima (la mia domanda era inizialmente sbagliata, ho scritto "più vecchio di", il mio errore) ma funziona quando ho impostato -2 invece di +2. Non l'ho testato su NTFS ora, devo aspettare fino a domani per quello, ma penso che funzioni anche lì (come sul mio Ubuntu locale). In caso contrario, ti farò sapere.
Bevor

Funziona perfettamente :)
Bevor

Grande
MrGreen

2

Se si esegue il pipe su xargs, è possibile regolare facilmente le opzioni di output / formato lsper mostrare la data, ordinare per data, ecc.

find / -type f -mtime -2 -print0 | xargs -0 ls -lt


1

Questo è più facile in zsh, grazie ai suoi qualificatori glob .

print -l /**/*~/(proc|dev|sys)/*(m-2om)

Questo elenca tutti i file in /, ad eccezione dei file in /proco /devo /sys, che sono stati modificati negli ultimi 2 giorni ( m-2). I file sono elencati in ordine cronologico inverso di tempo di modifica ( om), uno per riga ( print -l).

Se si desidera elencare anche i metadati del file, non è necessario ordinare nella shell, filtrare solo. È possibile imbattersi in un limite di lunghezza della riga di comando dipendente dalla piattaforma se ci sono troppi file corrispondenti.

ls -dlt /**/*~/(proc|dev|sys)/*(m-2)

Se si desidera abbinare solo i file normali, aggiungere .tra parentesi.

Con solo gli strumenti POSIX, è possibile utilizzare ls -dltper l'ordinamento e findper generare l'elenco dei file. Ancora una volta, potresti incontrare un limite di lunghezza della riga di comando dipendente dalla piattaforma se ci sono troppi file corrispondenti. Se si desidera abbinare solo i file normali, aggiungere -type fprima o dopo mtime -2.

find / -mtime -2 -exec ls -dlt {} +

1

(Nota: una frase della domanda inizialmente chiedeva le date, più vecchie di 2 giorni nel testo, mentre il titolo aveva il contrario. La necessità di ordinare l'output è stata introdotta anche in seguito).

find / -mtime -2 -ls 

Con +2 vedi i file più vecchi di 2 giorni, con -2 meno di due giorni e solo 2: 2 giorni.

Con -ls ottieni un output simile a ls -l, dove puoi vedere la data dei file.

find / -ctime -2 -ls 

Con ctime invece di mtime, ottieni la data di creazione invece della data di modifica, ma a seconda delle capacità e delle impostazioni del file system in / etc / fstab questo potrebbe o non potrebbe funzionare.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.