-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Seguindo a mesma idéia, só com builtins do bash:
$ cat script.sh #/bin/bash FLAG=0 while read LINHA; do if [[ $LINHA =~ '^email' && $FLAG -eq 1 ]]; then echo ${LINHA/email/email_alternativo} FLAG=0 elif [[ $LINHA =~ '^email' ]]; then echo $LINHA FLAG=1 else echo $LINHA fi done < arquivo_original.txt $ ./script.sh Nome: Nair Sobrenome: Silveira email: nsilve...@dom.com email_alternativo: nsilve...@hotmail.com Nome: Carlos Sobrenome: Martin email: carlos.mar...@dom.com email_alternativo: cmarti...@walla.net Nome: Lucia Sobrenome: Andrade email: luc...@dom.com email_alternativo: luci...@hotmail.com Essa solução manteve a estrutura do arquivo original e é interessante por não usar nenhum comando externo. - -- Guilherme Magalhães Gall (GMGall) GPG Public Key ID: 0F498058 -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (GNU/Linux) Comment: http://getfiregpg.org iEYEARECAAYFAklEOEcACgkQZV3qXg9JgFiAogCfYp/zLPjRVFLL24CzfonPJTjY d7oAoJ2rvr94I/O8phLv31zQp8cHXHZ+ =0pzF -----END PGP SIGNATURE----- 2008/12/12 miranda <mira...@prodemge.gov.br>: > 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: nsilve...@dom.com > email: nsilve...@hotmail.com > === linha em branco === > Nome: Carlos > Sobrenome: Martin > email: carlos.mar...@dom.com > email: cmarti...@walla.net > === linha em branco === > Nome: Lucia > Sobrenome: Andrade > email: luc...@dom.com > email: luci...@hotmail.com > > [mira...@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} > > [mira...@guitar ~]$ awk -f awk.cmd texto > === linha em branco === > Nome: Nair > Sobrenome: Silveira > email: nsilve...@dom.com > email_alternativo: nsilve...@hotmail.com > === linha em branco === > Nome: Carlos > Sobrenome: Martin > email: carlos.mar...@dom.com > email_alternativo: cmarti...@walla.net > === linha em branco === > Nome: Lucia > Sobrenome: Andrade > email: luc...@dom.com > email_alternativo: luci...@hotmail.com >