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: Julio C. Neves
Subject: Re: [shell-script] bash expansion
Date: Fri, 29 Apr 2011 10:55:47 -0300

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]



reply via email to

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