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: Gustavo Soares [SLot]
Subject: Re: [shell-script] bash expansion
Date: Fri, 29 Apr 2011 15:30:27 -0300
User-agent: Mozilla/5.0 (X11; U; Linux i686; pt-BR; rv:1.9.2.17) Gecko/20110414 Thunderbird/3.1.10

Não queria remover o teste_agp mas mesmo assim muito obrigado.


Em 29-04-2011 15:09, William Alves dos Santos 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]



------------------------------------

---------------------------------------------------------------------
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



reply via email to

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