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

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

Re: [shell-script] bash expansion


From: William Alves dos Santos
Subject: Re: [shell-script] bash expansion
Date: Fri, 29 Apr 2011 15:13:38 -0300

Caros,

Eu adicionei o ultimo tr, conforme podem observar abaixo:

REMOVER_ERRO=`cat file.txt | tr ' ' ';' | awk -F";" '{if($3!=$NF) print
$1,$2"_"$3,$NF }' | tr '_' ' '`
cat file.txt | tr ' ' ';' | awk -F";" '{if($3!=$NF) print $1,$2"_"$3,$NF }'
>> file.txt
cat file.txt | grep -v "$REMOVER_ERRO" | sort -u | tr ' ' ';' | awk -F";" '{
OFS="+"; print "NUMERO: "$1, "NOME: "$2,"MODELO: "$3}' | tr '+' '\n' | cut
-d')' -f1 | tr '_'  '  '

Abraços

*William Alves dos Santos*
**Cel.: +55 (11) 6835 8172

 <address@hidden> <http://www.proatividadeweb.com>


Em 29 de abril de 2011 15:09, William Alves dos Santos <
address@hidden> escreveu:

> Caro,
>
>
> Teste dessa forma, aqui funcionou.
>
> REMOVER_ERRO=`cat file.txt | tr ' ' ';' | awk -F";" '{if($3!=$NF) print
> $1,$2"_"$3,$NF }' | tr '_' ' '`
> cat file.txt | tr ' ' ';' | awk -F";" '{if($3!=$NF) print $1,$2"_"$3,$NF }'
> >> file.txt
> cat file.txt | grep -v "$REMOVER_ERRO" | sort -u | tr ' ' ';' | awk -F";"
> '{ OFS="+"; print "NUMERO: "$1, "NOME: "$2,"MODELO: "$3}' | tr '+' '\n' |
> cut -d')' -f1
>
> Favor responder.
>
> Abraços
>
> *William Alves dos Santos*
> **Cel.: +55 (11) 6835 8172
>
>  <address@hidden> <http://www.proatividadeweb.com>
>
>
> Em 29 de abril de 2011 10:43, Marco polo Gonçalves rezende <
> address@hidden> escreveu:
>
>
>>
>> Bom dia Gustavo,
>>
>> Teste esse sed:
>>
>> sed -e 's/^\([^)]*\)) \(.*\)[ ]\(.*\)$/NUMERO:\1\nMODELO:\2\nNOME:\3\n/g'
>> nomedoarquivo
>>
>> Atenciosamente,
>>
>>
>> ________________________________
>> Marco Polo G. Rezende
>> (31)9757-2245
>> (31)3504-1161
>>
>> Skype: marcopolorezende
>> Msn: address@hidden
>>
>> ________________________________
>> De: Gustavo Soares [SLot] <address@hidden>
>>
>> Para: address@hidden
>> Enviadas: Sexta-feira, 29 de Abril de 2011 10:27
>>
>> Assunto: Re: [shell-script] bash expansion
>>
>>
>> Não funcionou, pois a terceira opção tem uma forma diferente, observe:
>>
>> 3) teste agp epsonfx
>>
>> o nome da impressora eh "teste agp" e depois vem o modelo "epsonfx" a
>> bagunça está ai.
>>
>> root@bavaria:~# cat impressoras | tr ' ' ';' | awk -F";" '{ OFS="+";
>> print "NUMERO: "$1, "NOME:"$2,"MODELO: "$3}' | tr '+' '\n' | cut -d')' -f1
>> NUMERO: 1
>> NOME:cpd
>> MODELO: epsonfx
>> NUMERO: 2
>> NOME:teste
>> MODELO: epsonfx
>> NUMERO: 3
>> NOME:teste
>> MODELO: agp
>> NUMERO: 6
>> NOME:pessoal
>> MODELO: epsonfx
>> NUMERO: 16
>> NOME:pessoal1
>> MODELO: epsonlx
>> NUMERO: 26
>> NOME:pessoal2
>> MODELO: hpdjet
>> NUMERO:
>> NOME:
>> MODELO:
>> root@bavaria:~#
>>
>> Em 29-04-2011 10:22, William Alves dos Santos escreveu:
>> > Caro,
>> >
>> >
>> > Veja se ajuda
>> >
>> > cat file.txt | tr ' ' ';' | awk -F";" '{ OFS="+"; print "NUMERO: "$1,
>> "NOME:
>> > "$2,"MODELO: "$3}' | tr '+' '\n' | cut -d')' -f1
>> >
>> > Lembrando que file.txt é onde esta as informações do seu arquivo.
>> >
>> >
>> > Abraços
>> >
>> > *William Alves dos Santos*
>> > **Cel.: +55 (11) 6835 8172
>> >
>> > <address@hidden> <http://www.proatividadeweb.com>
>> >
>> >
>> > Em 29 de abril de 2011 10:00, Gustavo Soares [SLot]<address@hidden
>> >escreveu:
>> >
>> >>
>> >> Ola galera.
>> >>
>> >> Tenho o seguinte arquivo:
>> >>
>> >> 1) cpd epsonfx
>> >> 2) teste epsonfx
>> >> 3) teste agp epsonfx
>> >> 6) pessoal epsonfx
>> >> 16) pessoal1 epsonlx
>> >> 26) pessoal2 hpdjet
>> >>
>> >> E fiz o script pra poder ler esse arquivo e separar umas coisinhas pra
>> mim.
>> >>
>> >> #!/bin/bash
>> >> while read linha; do
>> >> numero=${linha%%)*}
>> >> modelo=${linha##* }
>> >> nome=$(echo ${linha} | sed "s/$modelo//;s/$numero) //")
>> >> echo "NUMERO: ${numero}"
>> >> echo "NOME : ${nome}"
>> >> echo -e "MODELO: ${modelo}\n"
>> >> done< impressoras
>> >>
>> >> O que gostaria e de trocar o sed por expansion mas não sei como fazer
>> >> pra remover $numero $modelo, o que sobrar vira $nome.
>> >>
>> >> Uma saida pra poder ajudar
>> >>
>> >> NUMERO: 1
>> >> NOME : cpd
>> >> MODELO: epsonfx
>> >> NUMERO: 2
>> >> NOME : teste
>> >> MODELO: epsonfx
>> >> NUMERO: 3
>> >> NOME : teste agp
>> >> MODELO: epsonfx
>> >> NUMERO: 6
>> >> NOME : pessoal
>> >> MODELO: epsonfx
>> >> NUMERO: 16
>> >> NOME : pessoal1
>> >> MODELO: epsonlx
>> >> NUMERO: 26
>> >> NOME : pessoal2
>> >> MODELO: hpdjet
>> >>
>> >> Obrigado.
>> >>
>> >> --
>> >> -------------------
>> >> SLot
>> >> UIN: 19596909
>> >> Linux User: 124842
>> >> Jabber: address@hidden
>> >> Emails: address@hidden | 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
>> > ----------------------------------------------------------
>> > Servidor Newsgroup da lista: news.gmane.org
>> > Grupo: gmane.org.user-groups.programming.shell.brazil
>> >
>> > Links do Yahoo! Grupos
>> >
>> >
>>
>> --
>> -------------------
>> SLot
>> UIN: 19596909
>> Linux User: 124842
>> Jabber: address@hidden
>> Emails: address@hidden | address@hidden
>>
>> [As partes desta mensagem que não continham texto foram removidas]
>>
>>  
>>
>
>


[As partes desta mensagem que não continham texto foram removidas]



reply via email to

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