[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] linhas múltiplas de 4
From: |
miranda |
Subject: |
Re: [shell-script] linhas múltiplas de 4 |
Date: |
Fri, 12 Dec 2008 08:41:44 -0200 |
Considerando que não existe a string email no e-mail do
usuário , caso contrário é necessária uma pequena modificação
cat texto
=== linha em branco ===
Nome: Nair
Sobrenome: Silveira
email: address@hidden
email: address@hidden
=== linha em branco ===
Nome: Carlos
Sobrenome: Martin
email: address@hidden
email: address@hidden
=== linha em branco ===
Nome: Lucia
Sobrenome: Andrade
email: address@hidden
email: address@hidden
[miranda@guitar ~]$ cat awk.cmd
BEGIN{FLAG=1;}
$0 !~ /email/ {print}
$0 ~ /email/ && FLAG == 1 {print;FLAG=0;next}
$0 ~ /email/ && FLAG == 0 {sub("email",
"email_alternativo");print;FLAG=1}
[miranda@guitar ~]$ awk -f awk.cmd texto
=== linha em branco ===
Nome: Nair
Sobrenome: Silveira
email: address@hidden
email_alternativo: address@hidden
=== linha em branco ===
Nome: Carlos
Sobrenome: Martin
email: address@hidden
email_alternativo: address@hidden
=== linha em branco ===
Nome: Lucia
Sobrenome: Andrade
email: address@hidden
email_alternativo: address@hidden
On Fri, 2008-12-12 at 00:15 -0200, Guilherme Gall wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Fiz o seguinte script em awk. Vê se ajuda:
>
> $ cat script.awk
> BEGIN{
> RS=""
> FS="\n"
> OFS="\n"
> }
>
> {
> sub(/email/, "email_alternativo", $4)
> print $0"\n"
> }
>
> $ awk -f script.awk arquivo_original.txt
> Nome: Nair
> Sobrenome: Silveira
> email: address@hidden
> email_alternativo: address@hidden
>
> Nome: Carlos
> Sobrenome: Martin
> email: address@hidden
> email_alternativo: address@hidden
>
> Nome: Lucia
> Sobrenome: Andrade
> email: address@hidden
> email_alternativo: address@hidden
>
> Não consegui manter as linhas em branco em seus lugares originais,
> perceba que a primeira linha foi apagada e que uma linha em branco
> extra foi adicionada no final da saída. Acredito que o segredo está no
> uso adequado da variável ORS, mas não consegui fazer funcionar e ainda
> tive que concatenar um \n no final de cada registro para colocar uma
> linha em branco entre cada um.
>
> Se alguém mais experiente em awk puder dar uma idéia seria
> interessante.
>
> Saudações,
> - --
> Guilherme Magalhães Gall (GMGall)
> GPG Public Key ID: 0F498058
>
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.9 (GNU/Linux)
> Comment: http://getfiregpg.org
>
> iEYEARECAAYFAklByvoACgkQZV3qXg9JgFjf/ACdFdEM7fIqFm+EoOyRk4drztw7
> BqEAnR09iG+fXm/i1DzV7iWnmtu/0Zei
> =32AY
> -----END PGP SIGNATURE-----
>
> 2008/12/11 Molinero <address@hidden>:
> > Pessoal,
> >
> > Gostaria de uma ajuda de vocês.
> > Preciso fazer um script que leia um arquivo e de 4 em 4 linhas deste
> > arquivo e altere uma parte desta linha.
> >
> > Ex.:
> > Arquivo_Original.txt
> > === linha em branco ===
> > Nome: Nair
> > Sobrenome: Silveira
> > email: address@hidden
> > email: address@hidden
> > === linha em branco ===
> > Nome: Carlos
> > Sobrenome: Martin
> > email: address@hidden
> > email: address@hidden
> > === linha em branco ===
> > Nome: Lucia
> > Sobrenome: Andrade
> > email: address@hidden
> > email: address@hidden
> >
> > Quero alterar o segundo "email" para "email_alternativo", ficando
> então:
> >
> > Arquivo_Novo.txt
> > === linha em branco ===
> > Nome: Nair
> > Sobrenome: Silveira
> > email: address@hidden
> > email_alternativo: address@hidden
> > === linha em branco ===
> > Nome: Carlos
> > Sobrenome: Martin
> > email: address@hidden
> > email_alternativo: address@hidden
> >
> > ... e por ai vai.
> >
> > Quebrei a cabeça e não consegui, por isso peço a ajuda de vcs.
> > Agradeço desde já !!!
> >
> >
>
>
>
>
- Re: [shell-script] Re: problema ao exporta váriaveis, (continued)
- Re: [shell-script] Re: problema ao exporta váriaveis, Guilherme Gall, 2008/12/08
- Re: [shell-script] Re: problema ao exporta váriaveis, Julio C. Neves, 2008/12/09
- Re: [shell-script] Re: problema ao exporta váriaveis, Breno Moiana, 2008/12/09
- Re: [shell-script] Re: problema ao exporta váriaveis, Julio C. Neves, 2008/12/09
- Re: problema ao exporta váriaveis, edmarssouza, 2008/12/09
- linhas múltiplas de 4, Molinero, 2008/12/11
- Re: linhas múltiplas de 4, Molinero, 2008/12/11
- Re: [shell-script] [MODERAÇÃO]Re: linhas múltiplas de 4, MrBiTS, 2008/12/14
- Re: linhas múltiplas de 4, marlon_mca, 2008/12/11
- Re: [shell-script] linhas múltiplas de 4, Guilherme Gall, 2008/12/11
- Re: [shell-script] linhas múltiplas de 4,
miranda <=
- Re: [shell-script] linhas múltiplas de 4, Guilherme Gall, 2008/12/13
- [SOLUÇÃO] linhas múltiplas de 4, Molinero, 2008/12/12
- Script rotas, Rafael Weber, 2008/12/13
- Re: [shell-script] Script rotas, Raul Libório, 2008/12/13
- Re: [shell-script] Script rotas, Rafael Weber, 2008/12/15