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

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

RES: [shell-script] Email de Retorno


From: Julio Cezar Neves - DISB.O
Subject: RES: [shell-script] Email de Retorno
Date: Wed, 15 May 2002 16:07:12 -0300

Fala André,
olha só este roteiro

1 - Para vc pegar os dados do cliente no arquivo, é necessário que vc
padronize a disposição de cada um dos dados desejados dentro do arquivo.
Assim p.ex. o nº do pedido poderia estar entre 2 ^, o cliente entre 2 $ e
assim por diante. É interessante notar na escolha deste delimitadores, que
eles não poderão ocorrer em qq outra parte do pedido. Assim para pegar o nº
do pedido e o cliente, bastaria:
Pedido=`cut p0005123.rem -f2 -c'^'`
Cliente=`cut p0005123.rem -f2 -c'$'`

2 - Crie um arquivo com o seguinte lay out:
Num do vendedor:Nome do Vendedor:e-mail do vendedor
ex. 0005:Fernando Henrique:address@hidden

3 - Isso feito e padronizado, teu script seria o seguinte:

ls *.[!O][!K] |    # Procurando arqs q nao terminam com .OK
while read Arq     # Arq vai receber o nome dos arqs selecionados pelo ls
do
        Tipo=`echo $Arq | cut -c1`  # A var Tipo recebe um P para pedido ou
...
        Vendedor=`echo $Arq | cut -c2-5` # Peguei o 0005
        Sequencia=`echo $Arq | cut -c6-8`
# Vou pegar os dados de dentro do arquivo ($Arq) conforme expliquei acima:
        Pedido=`cut $Arq -f2 -c'^'`
        Cliente=`cut $Arq -f2 -c'$'`
# Agora vou pegar os dados do vendedor no arquivo cujo lay out descrevi
acima:
        OldIFS="$IFS"
        IFS=:
        grep "^$Vendedor" ArqVendedores | read lixo Nome MailAddress
# Ja tenho todos os dados para mandar o mail, entao la vai ele:
        mail $MailAddress << FimMail
Caro $Vendedor, hoje: `date "+%d/%m/%Y aas %H:%M"`, seu pedido nº $Pedido,
referente ao cliente $Cliente ....     ....      ....
...
...
FimMail
        mv $Arq $Arq.OK
done

Recomendações:
1 - Na linha do FimMail, não pode ter nada além deste label (cuidado com os
espaços em branco antes e após)
2 - Se eu fosse vc, eu geraria um arquivo de log diário. Como o script será
executado pelo cron, este log seria a única auditagem (é melhor que
auditoria, né?) que vc poderia fazer.
3 - Escrevi este script direto na tela. Não o testei. Mas os erros que
porventura houverem, não devem ser complicados de resolver.

qq coisa estou às ordens em PVT.
Julio Cezar Neves

> -----Mensagem original-----
> De: André Luiz [mailto:address@hidden]
> Enviada em: quarta-feira, 15 de maio de 2002 13:12
> Para: address@hidden
> Assunto: [shell-script] Email de Retorno
> 
> 
> Bom dia a todos!
> 
> Alguém da lista teria algum exemplo ou poderia me dar uma 
> idéia de como
> fazer um script que rodasse no crontab e fizesse o seguinte:
> eu tenho um diretório chamado /home/repres/andira que ficam 
> arquivos que
> chegam via ftp de várias pessoas do Brasil, estes arquivos 
> são passados por
> representantes da nossa empresa. Esses representantes são 
> denomidados por
> número, por exemplo, 0005, 0123, etc... e os arquivos que chegam nos
> servidores são p0005123.rem onde "P" é porque é pedido, 
> "0005" é o número do
> representante e "123" seria a sequencia do arquivo,  eles tem em suas
> máquinas para passarem pedidos, e é gerado uma espécie de arquivo TXT.
> Perguntas:
> Como eu faço para saber qual arquivo é o novo, sendo que ele 
> rodaria de 5 em
> 5 minutos por exemplo.
> Como eu pegaria o número do representante, que está no 
> arquivo, "0005" no
> caso.
> E como eu faço, ou melhor quais comandos eu uso para procurar 
> no conteúdo o
> do arquivo o número do pedido, qual é o cliente e coisas 
> assim, depois de eu
> ter todos estes dados, enviar uma resposta ao representante.
> 
> Alguém poderia me auxiliar com isso ou me indicar bons sites 
> que falem sobre
> scripts e bons tutoriais na internet.
> 
> Agradeço a ajuda de todos e espero ser ajudado de alguma 
> forma, pois não
> entendo muita coisa de shell script e estou precisando 
> desenvolver isso com
> uma certa urgência.
> 
> Obrigado
> 
> André Luiz
> 
> 
> ---------------------------------------------------------------------
> Esta lista não admite a abordagem de outras liguagens de 
> programação, como perl, C etc.
> ---------------------------------------------------------------------
> Sair da lista: address@hidden
> ---------------------------------------------------------------------
> Esta lista é moderada de acordo com o previsto em 
http://www.listasdiscussao.cjb.net
--------------------------------------------------------------------- 

Seu uso do Yahoo! Grupos é sujeito às regras descritas em:
http://br.yahoo.com/info/utos.html 



reply via email to

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