Q tal usar o curl para fazer um head ?
URL=www.google.com.br/intl/pt-BR_br/images/logo.gif
curl -sI ${URL} | sed -n '/Last-Modified: */{ s///; p }'
Wed, 07 Jun 2006 19:50:30 GMT
calculando o timestamp:
DATE=$( curl -sI ${URL} | sed -n '/Last-Modified: */{ s///; p }' )
date -d "${DATE}" +"%s"
1149709830
Ou então baixa o arquivo e compara o md5sum
2008/2/22 mop <[EMAIL PROTECTED]>:
> Boa Fernando!!!
>
> Para o caso de um mísero sistema, só com shell, uma solução 100% bash, desde
> que este tenha sido compilado com suporte a tcp:
>
> exec 3<>/dev/tcp/www.google.com.br/80
> D=;echo -e "HEAD /intl/pt-BR_br/images/logo.gif HTTP/1.1\r\n\r\n" >&3
> while read -t9 L;do [ ${L%% *} == Last-Modified: ]&&D=${L#* }&&break;done<&3
> exec 3<&-
>
> Sorry, I am a shell fan! :)
>
> Caso a data no download não esteja sendo preservada, é possível inserir no
> script uma linha com:
> touch -d "$D" file
>
> Daí a cada checagem é só verificar se $D é igual a:
> date -r file
>
>
> ------------------------------------------------------------------
> >From: Fernando Lemes da Silva
>
> >
> >Vamos supor que voce baixe o arquivo e anote a data e hora dele no servidor
> >remoto. Para saber se o arquivo foi modificado basta comparar a data.. algo
> >como:
> >
> >(echo -e "HEAD www.google.com.br/intl/pt-BR_br/images/logo.gif
> >HTTP/1.1
> >Host: www.google.com.br
>
> >
> "; sleep 3) |
> >nc www.google.com.br 80 |
> >grep "Last-Modified:"
> >
> >Isto irá pegar o header "Last-Modified" da requisição... logo voce saberá
> >quando o arquivo mudar. Espero que lhe ajude.
>
>
>
>
> ---------------------------------------------------------------------
> Esta lista não admite a abordagem de outras liguagens de programação, como
> perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio
> aviso.
> ---------------------------------------------------------------------
> Sair da lista: [EMAIL PROTECTED]
> ---------------------------------------------------------------------
> Esta lista é moderada de acordo com o previsto em
> http://www.listas-discussao.cjb.net
> ---------------------------------------------------------------------
> Servidor Newsgroup da lista: news.gmane.org
> Grupo: gmane.org.user-groups.programming.shell.brazil
>
>
> Links do Yahoo! Grupos
>
> [EMAIL PROTECTED]
>
>
>
--
Tiago B Peczenyj
Linux User #405772
http://peczenyj.blogspot.com/
"what does not kill us makes us stronger"