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: Enio Onodera
Subject: Re: [shell-script] bash expansion
Date: Fri, 29 Apr 2011 08:41:08 -0700 (PDT)

Assim tbm funciona, eu acho (pelo menos no teste funcionou)...
#!/bin/bashwhile read linha; donumero=${linha%%)*}modelo=${linha##* 
}teste=${linha#*)}nome=${teste/$modelo/}echo "NUMERO: ${numero}"echo "NOME : 
${nome}"echo -e "MODELO: ${modelo}\n"done < impressoras
tentei fazer sem adicionar a linha teste, mas não consegui... não manjo mto de 
bash expansion... =/
Abs,Enio Onodera

--- Em sex, 29/4/11, Julio C. Neves <address@hidden> escreveu:

De: Julio C. Neves <address@hidden>
Assunto: Re: [shell-script] bash expansion
Para: address@hidden
Data: Sexta-feira, 29 de Abril de 2011, 10:55















 
 



  


    
      
      
      Olá Gustavo,

sempre pode ser mais simples do que se pensa.



$ echo "1) cpd epsonfx

> 2) teste epsonfx

> 3) teste agp epsonfx

> 6) pessoal epsonfx

> 16) pessoal1 epsonlx

> 26) pessoal2 hpdjet" | while read Num Nome Modelo

> do

>     Num=${Num%?}

>     echo -e "$Num\t$Nome\t$Modelo"

> done

1    cpd    epsonfx

2    teste    epsonfx

3    teste    agp epsonfx

6    pessoal    epsonfx

16    pessoal1    epsonlx

26    pessoal2    hpdjet



Boa sorte



Cordialmente,



Julio Neves



*Quer programar bem em Shell?*



*Use este endereço de e-mail, o Skype ou ☎ (21)8112-9988 ☎*

My profiles: [image: Twitter] <http://twitter.com/juliobash>

Contact me: [image: Skype/] julioneves1



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]





    
     

    
    


 



  










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



reply via email to

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