lazlo:~# touch arq1; sleep 2; touch arq2
lazlo:~# if [ arq1 -nt arq2 ]; then echo ARQ1 eh mais novo; else echo
ARQ2 eh mais novo; fi
ARQ2 eh mais novo
lazlo:~# if [ arq1 -ot arq2 ]; then echo ARQ1 eh mais novo; else echo
ARQ2 eh mais novo; fi
ARQ1 eh mais novo


atenção no "-nt" (Newer Than) out "-ot" (Older Than).


--

Flávio do Carmo Junior aka waKKu
#bash-br @ irc.freenode.net

2008/6/4 Rafael Nery <[EMAIL PROTECTED]>:
> Olá!
> Preciso criar um script para comparar a data do arquivo e se ele for mais
> novo enviar um email.
> São 2 arquivos:
> linux1 e linux2
> Só não estou conseguindo achar um meio de fazer isso com o if.
> Alguém te alguma solução para a condição if?
> Eu fiz um que compara 1 dia atrás e vários arq.:
>
> #!/bin/bash
>
> [EMAIL PROTECTED]
> [EMAIL PROTECTED]
> VAR=`(date -d "1 days ago" +%Y%m%d)`
> cd /backup
> for ARQ in `ls *.tgz`
> do
> ARQ=`echo $ARQ | cut -f1 -d'.'`
> if [ "$VAR" -lt "$ARQ" ]
> then
> /usr/sbin/sendmail -f$SENDER $EMAIL <<EOF
> from: arquivos de backup <$SENDER>
> To: $MAIL
> Subject: Arquvivos de backup
> Existe arquivos com data anterior a 1 dias
>
> EOF
>
> else
> echo "Não existe arquivos com data anterior a 1 dias."
> fi
> done
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> 

Responder a