Ver Mensaje Individual
  #5 (permalink)  
Antiguo 15/02/2010, 15:44
Avatar de neodani
neodani
 
Fecha de Ingreso: marzo-2007
Mensajes: 1.811
Antigüedad: 17 años, 2 meses
Puntos: 20
Respuesta: Como buscar fichero modificados recientemente?

He incluido una mejora al script

Ademas del directorio donde quieres que busque puedes pasarle el numero de ficheros que quieres mostrar, útil para directorios muy largos

./ultima_Modificacion.sh /tmp/ 5

Código bash:
Ver original
  1. #!/bin/bash
  2. #################################################################################
  3. # Busca recursivamente en el directorio que le pases como argumento $1
  4. # todos los archivos, ordenados (arriba) los modificados recientemente
  5. # Uso: ./ultima_Modificacion.sh /tmp/ 5
  6. # PROGRAMA DIRECTORIO [NUM_ARCHI_A_MOSTRAR]
  7. # Autor: neodani
  8. # Fecha creacion: 15-02-2010
  9. #################################################################################
  10.  
  11. IFS=$'\x0A'$'\x0D' # Para evitar que el bucle for rompa por espacios
  12.  
  13. RUTA=$1 #Directorio a explorar
  14. CORTAR=$2 #Corta el numero de lineas
  15. NUM_ARCHIVOS=0
  16.  
  17. for file in $(find $RUTA -type f -printf '%T@ %p\n'| sort -r);do
  18.  
  19.         fecha=$(echo $file | cut -d" " -f1)
  20.         fecha=$(date -d @$fecha) # Traduce la fecha TIMESTAMP en legible
  21.         filename=$(echo $file | cut -d" " -f2)
  22.         echo $fecha $filename >> temp.$$
  23.         NUM_ARCHIVOS=$(expr $NUM_ARCHIVOS + 1)
  24. done;
  25.  
  26. echo ""
  27. if [ ! -n "$2" ];then
  28.         CORTAR=$NUM_ARCHIVOS
  29. fi
  30. echo "  Mostrando $CORTAR de $NUM_ARCHIVOS archivos encontrados"
  31. echo "-----------------------------------------------"
  32. cat temp.$$ | head -n$CORTAR
  33. rm temp.$$

Salu2!