quarta-feira, 10 de agosto de 2011

Automatização de download do servidor FTP

  Uma das rotinas em uma empresa que trabalhei era conferir os dados de arquivos-texto e fazer uma contagem da produção. Então por que não automatizar já que é uma rotina?
  Este script conecta em um servidor FTP e realiza algumas instruções. Primeiro, o comando ftp -ivnp ip conecta ao servidor FTP (substitua ip pelo endereço ip). O símbolo << (here-document) diz qual é a palavra que ao encontrar novamente, encerrará as atividades. A linha seguinte inicia com user e é obrigatória. As duas palavras seguintes devem ser o nome de usuário e senha para efetuar a autenticação.
  Em seguida o comando cd acessa diretório1 e o mget faz download de múltiplos arquivos. Caso queria apenas um arquivo, use apenas get. Se for para entrar em outro diretório, use cd ../ para subir um nível e entrar no diretorio2. Por fim, ao encontrar fimftp, o script finaliza suas ações.
  Uma vez que os arquivos foram trazidos, faça o tratamento que for necessário: ter uma cópia em determinado diretório, fazer uma contagem com as informações dentro do arquivo etc.

#!/bin/bash


ftp -ivnp ip << fimftp
user usuario senha

cd diretorio1
mget arquivo1 arquivo2
cd ../diretorio2
mget outro_arquivo
fimftp



  Este é excelente exemplo para mostrar a utilidade do Shell Script. Tudo que for repetitivo pode ser automatizado. Cito como vantagens a garantia que a tarefa não será esquecida (salvo se a conexão cair) e o ganho de tempo. O crontab pode ser usado para disparar o script de acordo com a sua necessidade.

Nenhum comentário:

Postar um comentário