2012-01-24 18 views
28

veo que estoy trabajando en un código fuente de proyecto GRANDE Ahora quiero saber qué archivos se modifican después de una fecha.¿Hay alguna forma de averiguar el archivo modificado después de una fecha en el código del proyecto completo?

¿Hay algún comando o alguna manera de conseguir que ..

he intentado

# ls -R -l 

pero aquí se muestra todos los archivos con los últimos datos modificados pero quiero filtrar esta salida por algunos datos ...

¿hay alguna forma de hacerlo en Linux? ¿hay alguna herramienta disponible para esto?

+1

¿Qué es la herramienta scm? Casi todas las herramientas de control de versiones vienen con buenos mecanismos de consulta – Jayan

+0

encontrar tiene diferentes opciones para proporcionar una lista basada en las fechas de acceso – Jayan

Respuesta

59
#set timestamp for file  
touch --date "2011-12-31" /tmp/foo 
# Find files newer than 2011/Dec/31, in /some/files 
find /some/files -newer /tmp/foo 
+7

Después de un tiempo específico: touch -d '2011-12-31 10:22'/tmp/foo –

22

Uso encontrar comando con -mtime argumentos: Some examples are here o here

Por ejemplo, los archivos de lista cambiado en los últimos 7 días ...

find/-type f -mtime -7 

Para fina de grano búsqueda puede intentar -mmin argumento. Vea un ejemplo discutido en otro sitio SE: Find All files older than x minutes

+1

El problema con mtime es que es demasiado grueso. Si tiene archivos modificados hace 6 horas y 8 horas, no puede distinguirlos con find. Deberá usar [la solución alternativa de peko] (http://stackoverflow.com/a/8986162/111424). –

+0

Este comando proporciona los archivos modificados hace 7 * 24 horas, no los que se cambiaron en los últimos 7 días. –

+0

¿Hay alguna forma de omitir ciertas subcarpetas con una (s) palabra (s) específica (s) de mantener el "caché" y el "registro"? por ejemplo. '' 'find/-type f -mtime -7 -skip" cache, log "?' '' gracias. – Ahdee

Cuestiones relacionadas