¿Cuál es exactamente el comando para mostrar archivos de menos de 2 días? Pensé en algo como esto:
$ find / -mtime -2
... pero no estoy seguro de cómo imprimir la fecha de los archivos encontrados. Mi objetivo es encontrar el archivo en un sistema NTFS montado que es nuevo o cambiado en los últimos días.
Además, sería muy útil clasificar los resultados del más nuevo al más antiguo. ¿Es eso posible?
bash
command-line
find
Bevor
fuente
fuente
Respuestas:
Archivos creados o modificados hace menos de 48 horas
ordenados del más nuevo al más antiguo:
He encontrado
%T@
desdeman find
: último tiempo de modificación (segundos desde la época)fuente
Si canaliza a xargs, puede ajustar fácilmente las opciones de salida / formato
ls
para mostrar la fecha, ordenar por fecha, etc.find / -type f -mtime -2 -print0 | xargs -0 ls -lt
fuente
Esto es más fácil en zsh, gracias a sus calificadores globales .
Esto enumera todos los archivos bajo
/
, excepto los archivos bajo/proc
o/dev
o/sys
, que se han modificado en los últimos 2 días (m-2
). Los archivos se enumeran en orden cronológico inverso del tiempo de modificación (om
), uno por línea (print -l
).Si desea enumerar también los metadatos del archivo, no necesita ordenar en el shell, solo filtrar. Puede encontrarse con un límite de longitud de línea de comando dependiente de la plataforma si hay demasiados archivos coincidentes.
Si desea hacer coincidir solo los archivos normales, agregue
.
dentro de los paréntesis.Con solo las herramientas POSIX, puede usar
ls -dlt
para ordenar yfind
generar la lista de archivos. De nuevo, puede encontrarse con un límite de longitud de línea de comando dependiente de la plataforma si hay demasiados archivos coincidentes. Si desea hacer coincidir solo los archivos normales, agregue-type f
antes o despuésmtime -2
.fuente
(Nota: una oración de la pregunta originalmente pedía fechas, más de 2 días en el texto, mientras que el título lo decía al revés. La necesidad de ordenar la salida también se introdujo más adelante).
Con +2, verá archivos con más de 2 días de antigüedad, con -2 con menos de dos días, y con solo 2: 2 días de antigüedad.
Con -ls obtienes una salida similar a ls -l, donde puedes ver la fecha de los archivos.
Con ctime en lugar de mtime, obtiene la fecha de creación en lugar de la fecha de modificación, pero dependiendo de las capacidades y la configuración del sistema de archivos en / etc / fstab esto podría o no funcionar.
fuente