[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: RES: [shell-script] script com awk ::problemas::
From: |
Sergio A Lima Jr |
Subject: |
Re: RES: [shell-script] script com awk ::problemas:: |
Date: |
Wed, 02 Jun 2004 09:29:49 -0300 |
On Tue, 2004-06-01 at 16:54, Julio Cezar Neves - DATAPREVRJ wrote:
> Aê Sérgio, fica até mais leve:
>
> #!/bin/bash
>
> DADOSDOMAINS=`cat /www/httpd/dominios/dominios.txt | grep -v "\:::::" | cut
> -f1 -d:
> MAILDOMAINS="/www/mailserver/vpopmail/domains/";
> FILEUSERS="vpasswd";
>
> NSDOMAINS=`cat $DADOSDOMAIS | grep -v "\:::::"| echo "$MAILDOMAINS$(cut -f1
> -d:)$FILEUSERS"
>
> echo $NSDOMAINS;
>
> O que ocorre é que o awk é um interpretador muito pesado e não deve ser
> usado para pequenas tarefas como essa, mas o erro que vc ganhou é porque o
> awk tem suas regras especiais de passagem de parâmetro e por isso não
> reconhece as variáveis do shell.
>
> [ ]s,
> Julio Cezar Neves
> - Programa de Software Livre -
> Tel:+55 21 2528-7070 / +55 21 8112-9988
> Fax: +55 21 2528-7646
> mailto:address@hidden
>
>
> | -----Mensagem original-----
> | De: Sergio A Lima Jr [mailto:address@hidden]
> | Enviada em: terça-feira, 1 de junho de 2004 16:43
> | Para: address@hidden
> | Assunto: [shell-script] script com awk ::problemas::
> |
> |
> | Pessoal,
> |
> | estou escrevendo um script (bash) utilizando o awk. Meu problema: não
> | consigo fazer o awk ler várias externas:
> |
> | #!/bin/bash
> |
> | DADOSDOMAINS=`cat /www/httpd/dominios/dominios.txt | grep -v
> | "\:::::" |
> | awk -F ":" {'print $1'}`;
> | MAILDOMAINS="/www/mailserver/vpopmail/domains/";
> | FILEUSERS="vpasswd";
> |
> | NSDOMAINS=`cat $DADOSDOMAIS | grep -v "\:::::"| awk -F ":" {'print
> | "$MAILDOMAINS"$1"$FILEUSERS"'}`;
> |
> | echo $NSDOMAINS;
> |
> | Alguma idéia de como resolver??
> |
> | Obrigado.
> |
> | --
> | Sergio A Lima Jr <address@hidden>
> |
> |
> | [As partes desta mensagem que não continham texto foram removidas]
> |
> |
> |
> | ---------------------------------------------------------------------
> | 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: address@hidden
> | ---------------------------------------------------------------------
> | Esta lista é moderada de acordo com o previsto em
> http://www.listas-discussao.cjb.net
> ---------------------------------------------------------------------
>
> Links do Yahoo! Grupos
>
>
>
>
>
>
>
>
> ---------------------------------------------------------------------
> 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: address@hidden
> ---------------------------------------------------------------------
> Esta lista é moderada de acordo com o previsto em
> http://www.listas-discussao.cjb.net
> ---------------------------------------------------------------------
>
> Links do Yahoo! Grupos
>
>
>
>
>
Julio,
muito obrigado pela ajuda.
Olhe como ficou o script agora:
#!/bin/bash
MAILDOMAINS="/www/mailserver/vpopmail/domains/";
FILEUSERS="vpasswd";
arq_destino="/www/mailmanager/listagem.txt";
serial=`cat /www/serial`;
/bin/rm -f $arq_destino;
sender="postmaster@`hostname -d`";
recipient="address@hidden";
for dominio in $(cat /www/htdocs/.dados | grep -v ":::::" | cut -f1
-d:); do
echo -e "\t\t"::$dominio:: | tr "a-z" "A-Z" >> $arq_destino
for usuario in $(cat $MAILDOMAINS$dominio/$FILEUSERS | cut -f1 -d:);
do
echo "$usuario@$dominio" >> $arq_destino
done
done
logdata=`cat $arq_destino`
cat <<EOF | sendmail -i -t
From: $sender
To: $recipient
Subject: Listagem de Dominios - serie $serial
Segue abaixo a listagem completa de usuarios por dominio registrado no
servidor de
e-mail's deste Servidor de Dominios
${logdata}
EOF
/bin/rm -f $arq_destino;
Mais uma vez, muito obrigado.
--
Sergio A Lima Jr <address@hidden>
[As partes desta mensagem que não continham texto foram removidas]