Substitua os “10 minutos” por qualquer valor. Basicamente, só quero mover o arquivo se ele não estiver mais crescendo. Como posso fazer isso na linha de comando ou em um script bash?
Uma solução que seja fácil cron
é preferida.
Detalhes:
- SO: CentOS
- O que tentei até agora: nada porque não sei por onde começar
- Que tipo de arquivos: quaisquer arquivos em um diretório
Responder1
Comando de uma linha aqui:
find /path/to/dir1 -type f ! -mmin -10 -exec mv {} /path/to/dir2 \;
Substitua -10
pelo que quiser, a regra é:
+n for greater than n,
-n for less than n,
n for exactly n.
Responder2
Existem muitos caminhos.
Usando encontrar:
if find some_directory -mmin +10 | grep "^filename$" ; then
mv filename somewhere_else
fi
Outra forma seria calcular o md5sum e compará-lo
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
e execute isso a cada 10 minutos.