Holla Lista :-)

Eu quero automatizar a verificacao de novas versoes para varios arquivos 
de aplicativos que eu baixo da Internet, sejam .exe, .iso, .bin, o que for.

Basicamente, quero informar a url completa, transformando as partes 
especificas de versao em mascaras de expressao regular.

Ex:

<http://releases.mozilla.org/pub/mozilla.org/calendar/sunbird/releases/0.8/linux-i686/pt-BR/sunbird-0.8.pt-BR.linux-i686.tar.gz>

ficaria

<http://releases.mozilla.org/pub/mozilla.org/calendar/sunbird/releases/[[:alnum:].]+/linux-i686/pt-BR/sunbird-[[:alnum:].]+.pt-BR.linux-i686.tar.gz>

Entao, o script verifica, pela data de modificacao do arquivo no site se 
eh mais novo que o que eu tenho. Se eh, baixa, move o velho para um 
determinado local de recuperacao e envia email avisando que tem nova 
versao. Se ele nao conseguir decidir se ha ou nao uma nova versao 
(mascara ER mal feita), ou se a url de download mudou, ele manda email 
avisando.

Vejam que eu nao quero manter um mirror do site. Quero apenas baixar um 
arquivo especifico dentre varios arquivos de um diretorio remoto, seja 
http ou ftp. Isso impede que eu use a opcao de mirror do wget, por ex.

Aparentemente eh algo simples de se fazer:

Um 'lynx -dump -listonly $path | <varios filtros>' lista os arquivos do 
diretorio, e um loop neles com 'lynx -dump -head $path/$file | <varios 
filtros>' me permite obter a data de modificacao.

O problema aparece quando a url tem uma parte variavel no proprio 
diretorio, alem do arquivo final, como no ex acima. Eu precisaria, 
primeio, verificar qual diretorio eh o mais novo, e entao sim, verificar 
dentro dele, qual o arq mais novo.

So que, 'lynx -dump -head $path/' muitas vezes nao retorna nos headers 
http o campo last-modified. No ex, acima, pelo que pude observar, apenas 
um dos servidores retorna (releases.mozilla.org aponta para varios ip's)

Entao, se eu fui claro na minha esplanacao, eu gostaria de saber se 
alguem tem alguma sugestao...

Grato,

-- 
------------------------    __o    [EMAIL PROTECTED]  ----.-----------
  [EMAIL PROTECTED] Roberto Bagatini   _`\<,    www.ceat.net/~arkanon  \
   -=---=---==---=---=-   (_)/(_)   Phone +55 51 3748 7000  `--------
  Lajeado - RS - Brasil  ---------  ICQ 34 789 30 - LinuxUser 102.514
---------------------------------------------------------------------

Responder a