[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] AWK: Pegar 4 posicao e o restante
From: |
Gustavo Adolfo Kellermann |
Subject: |
Re: [shell-script] AWK: Pegar 4 posicao e o restante |
Date: |
Fri, 20 Jun 2003 14:52:50 -0300 |
Bom, o problema jah foi resolvido, mas nao resisto em lembrar que tem uma
solucao com awk:
awk '/teste/ {for (i=2; i<=NF; i++) {printf "%s ",$i}; printf "\n"}'
~slot/rede
e com sed (preste atencao nos espacos):
sed -n '/teste/s/^[^ ]* \(.*\)/\1/p'
se quiser do terceiro campo em adiante, ao inves do segundo:
sed -n '/teste/s/^[^ ]* *[^ ]* *\(.*\)/\1/p' ~slot/rede
Basta acrescentar '[^ ]* *' para pular um campo.
Entretanto, essa solucao com sed tem uma diferenca das outras. Ela nao vai
imprimir uma linha vazia quando encontrar uma linha com menos de 2 campos:
ele vai descartar a linha.
On Wed, 18 Jun 2003 18:41:46 -0300
Listas XTMS <address@hidden> wrote:
> Usando o cut (e imaginando que seu IFS seja espaço em branco):
>
> $ fgrep teste ~slot/rede |cut -d " " -f2-
>
> []'s
> Eri
>
> On Wed, 18 Jun 2003 18:28:11 -0300
> Slot <address@hidden> wrote:
>
> > Olá pessoal, é a primeira vez que estou postando aqui, demorei uma
> > data para achar uma lista de shell legal como essa.
> >
> > Bão o negócio é o seguinte
> >
> > Como eu faço uma pesquisa dentro de um arquivo e quero imprimir a 4
> > posição, mas não sei quantas posições ainda tem pra frente.... como
> > faço para q ele pegue isso pra mim.
> >
> > Exemplo
> >
> > cat ~slot/rede | fgrep teste | awk "{print "'$2'"}"
> >
> > assim ele me imprime a segunda posição, e para imprimir o resto depois
> > da segunda posição? Lembrando que não sei a quantidade que tem pra
> > frente.
> >
> >
> > Valeu
> >
> >
> > --
> > Slot
> > -------------------
> > Licq: 19596909
> > Linux User: 124842
> >
> >
> > ---------------------------------------------------------------------
> > 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.listasdiscussao.cjb.net
> > ---------------------------------------------------------------------
> >
> >
> > Seu uso do Yahoo! Grupos é sujeito às regras descritas em:
> > http://br.yahoo.com/info/utos.html
> >
> >
> >
>
>
> --
>
>
> ---------------------------------------------------------------------
> 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.listasdiscussao.cjb.net
> ---------------------------------------------------------------------
>
>
> Seu uso do Yahoo! Grupos é sujeito às regras descritas em:
> http://br.yahoo.com/info/utos.html
>
>
>
> Esta mensagem foi verificada pelo E-mail Protegido Terra.
> Scan engine: VirusScan / Atualizado em 18/06/2003 / Versão: 1.3.13
> Proteja o seu e-mail Terra: http://www.emailprotegido.terra.com.br/
>
>
--
**************************
Gustavo Adolfo Kellermann
address@hidden
Terra Networks Brasil S.A.
**************************