Preciso de uma shell que varra o diretório e crie uma lista com os arquivos desse diretório para que seja possivel construir uma rotina que verifique quais arquivos foram adicionados ou removidos do diretório.
certo... essa foi só uma ideia... agora se vc quer saber se o aquivo foi modificado, recomendo o uso do md5sum
primeiro eu tiraria a chave de todos os arquivos assim:
#!/bin/bash
md5sum -c lista.md5 > saida.txt
for ((;;));do
while read linha;do
arq=`echo $linha | cut -d: -f1`
if [ -e $arq ]; then
[ `echo $linha | cut -d: -f2` = " SUCESSO"] && echo "arquivo $arq ok" || echo "arquivo $arq foi modificado"
else
echo "arquivo $arq deletado"
fi
done < saida.txt
for i in `ls`;do
cat lista.txt | grep -x $i
[ $? -ne 0 ] || echo "$i - aquivo novo"
done
sleep 1
done
ele vai verificar se o arquivo foi modificado, ou deletado ou até mesmo se alguem add um arquivo novo no diretório
lembrando novamente que é só uma ideia... não pu de testes ve ai...
Seguinte, eu consegui usar esse para ver se algum foi deletado, mais não consegui implementar a parte do adicionado. Alguem pode me ajudar?
11. Re: Log de arquivos - URGENTE
hudyfxusa Outra
Post recolhido
Enviado em 22/12/2011 - 10:05h
tente assim:
#!/bin/bash
for i in `ls`;do
cat lista.txt | grep -x $i
[ $? -ne 0 ] || echo "$i - aquivo novo"
done
esse script vai dar um grep no arquivo 'lista.txt' e verificar se todos os arquivos conferem com os que estão na lista. os arquivos que nao estiverem na 'lista' são considerados arquivos novos, saco?
12. Re: Log de arquivos - URGENTE
willspbrusa Ubuntu
Post recolhido
Enviado em 22/12/2011 - 10:14h
Eu fiz isso e ele mostrou ./add.sh: linha 4: [: 1: esperado operador unário ...
Diversas vezes