[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] extrair só e-mail
From: |
João Luis - Departamento de Informática |
Subject: |
Re: [shell-script] extrair só e-mail |
Date: |
Tue, 17 Oct 2006 10:52:10 -0200 |
Flavio e Tiago,
Os dois exemplos resolveram o problema. Muito obrigado novamente !!
Abraço
João Luis
----- Original Message -----
From: Tiago Barcellos Peczenyj
To: address@hidden
Sent: Tuesday, October 17, 2006 10:17 AM
Subject: Re: [shell-script] extrair só e-mail
Ola,
Não onde vc lê as suas variaveis, entretanto veja este exemplo em awk + sort:
awk -F':' '($3 >= 500){
sub(",.*","",$5)
print $1"@organização - "$5
}' /etc/passwd | sort > emails.txt
no passwd, o primeiro campo (separado por : ) se refere ao usuario, o
terceiro ao uid e o quinto são as informações para o finger - são
diversas informações separadas por virgula, a primeira geralmente é o
nome.
optei por usar sub para remover tudo o que houver depois de uma
virgula (incluindo-a), porém vc poderia usar a função split e um
array.
[]´s
Tiago
On 10/17/06, João Luis - Departamento de Informática
<address@hidden> wrote:
> Bom dia a todos da lista.
>
> Estou c/ um pequeno problema: estou tentando extrair apenas os users
contidos no /etc/passwd e adicionar no final o @organizacao com o script
abaixo, que no momento pega alem do user o nome real do user. Mas quando altero
o campo read ele da erro no final: " sort: erro abrindo arquivo:
emails.txt".rsrs (o rsrs é proposital)
>
> #!/bin/bash
> IFS=":"
> rm -f emails.txt
> while true
> do
> read email cp1 cp2 cp3 cp4 cp5 cp6 || break
> [ $uid -ge 500 ] && echo "$email@organização - $nome" >> emails.txt
> done < /etc/passwd
> sort emails.txt > emails.tmp
> mv -f emails.tmp emails.txt
>
>
> Abraço a todos
>
> João Luis
>
>
> [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
> ---------------------------------------------------------------------
> Servidor Newsgroup da lista: news.gmane.org
> Grupo: gmane.org.user-groups.programming.shell.brazil
>
>
> Links do Yahoo! Grupos
>
>
>
>
--
Tiago B Peczenyj
Linux User #405772
# cd /pub
# more beer
[As partes desta mensagem que não continham texto foram removidas]