Reemplace los "10 minutos" con cualquier valor. Básicamente sólo quiero mover el archivo si ya no crece. ¿Cómo puedo hacer esto en la línea de comandos o en un script bash?
Se prefiere una solución que sea fácil cron
.
Detalles:
- SO: CentOS
- Lo que he probado hasta ahora: nada porque no sé ni por dónde empezar
- Qué tipo de archivos: cualquier archivo en un directorio
Respuesta1
Comando de una línea aquí:
find /path/to/dir1 -type f ! -mmin -10 -exec mv {} /path/to/dir2 \;
Reemplaza -10
con lo que quieras, la regla es:
+n for greater than n,
-n for less than n,
n for exactly n.
Respuesta2
Hay muchas maneras.
Usando buscar:
if find some_directory -mmin +10 | grep "^filename$" ; then
mv filename somewhere_else
fi
Otra forma sería calcular la suma md5 y compararla.
touch .filename.md5
prev_md5=$(cat .filename.md5)
new_md5=$(md5sum filename)
if [ "$prev_md5" = "$new_md5" ] ; then
mv filename somewhere_else
fi
echo "$new_md5" > .filename.md5
y ejecútelo cada 10 minutos.