shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Notificar novo arquivo carregado


From: Álvaro Justen [Turicas]
Subject: Re: [shell-script] Notificar novo arquivo carregado
Date: Sun, 16 Dec 2007 18:40:38 -0200

On Dec 15, 2007 2:03 AM, Didao <address@hidden> wrote:
>  preciso envinar um e-mail para grupos de usuario sempre que um novo arquivo
>  for carregado em determinado diretorio. Minha pergunta eh, como descobrir
>  que um novo arquivo foi carregado?

O que significa "arquivo carregado"?
Se for apenas "arquivo criado", basta verificar se ele existe com if [
-f "arquivo" ]; then ...
Se for para verificar quando o arquivo foi modificado, então sugiro
criar um arquivo onde fica a informação de última alteração do
referido arquivo. Então, de tempos em tempos, um script é rodado
através do cron e verifica se a data de modificação do arquivo que
você quer ver bate com a data que está gravada no arquivo que foi
criado com essa informação. Se não bater, envia o email. Esse segundo
caso ficaria mais ou menos assim (não cheguei a testar o script, mas a
lógica é essa):

#arquivo que você quer verificar a modificação:
arqVerify="/home/fulano/arquivo.ext"
#arquivo que guardará a informação da última modificação:
arqTmp="/tmp/modDate"
#email de quem será notificado:
email="a@b.c"

tmpDate=$(ls -l "$arqVerify" | awk { print $6 $7 })
if [ ! -e "$arqTmp" || "$tmpDate" != `cat "$arqTmp"` ]; then
 echo "$tmpDate" > $arqTmp
 echo "O arquivo $arqVerify foi modificado!" | mail $email
fi

Basta, então, colocá-lo no cron para que essa verificação seja feita
de X em X minutos, de acordo com sua necessidade.

Obs.: não envie emails com títulos diferentes dando "reply" em emails
anteriores da lista. Além de ser totalmente nonsene, vem muito lixo no
email que não precisava vir. Economize bytes. :-)

-- 
Abraços,
 Álvaro Justen [a.k.a. Turicas]
 Usuário Debian GNU/Linux
 Desenvolvedor Web: XHTML, CSS, JavaScript & PHP

reply via email to

[Prev in Thread] Current Thread [Next in Thread]