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

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

Re: [shell-script] awk: linhas pares e �mpares


From: Emerson Domingues Souto
Subject: Re: [shell-script] awk: linhas pares e ímpares
Date: Tue, 7 Feb 2006 16:37:34 -0200

Bruno,

o comando do Thiago funciona perfeitamente,
creio q a idéia dele é a seguinte: as linhas pares e impares se alternam, ora é 
impar, ora é par,
o controle está na var que ora é isso ora é aquilo.

Espero ter explicado bem, o importante é q se vc testar, verá q o comando do 
Thiago funciona sim.

  ----- Original Message ----- 
  From: Bruno Gola 
  To: address@hidden 
  Sent: Tuesday, February 07, 2006 4:17 PM
  Subject: Re: [shell-script] awk: linhas pares e ímpares


  Tiago, e aonde entra a questão da linha par ou linha impar nesse seu awk?

  Acho que você não leu toda a thread =)

  Té mais,

  On 2/7/06, Tiago Barcellos Peczenyj <address@hidden> wrote:
  >
  > Pra que usar NR ?
  >
  > awk '{if (var == "isso") {var="aquilo"} else { var="isso" } ; print var }'
  > arquivo
  >
  > Em 07/02/06, Eliphas Levy Theodoro <address@hidden> escreveu:
  > >
  > >  Rodrigo Monteiro escreveu:
  > > > Gostaria de saber (se possível em awk) como pegar um arquivo texto e
  > > > se for uma linha ímpar imprimir isso na tela se for par imprimir
  > > > aquilo.
  > >
  > > Simples, você pega o número da linha e divide por dois. Se tiver resto,
  > > faz algo, se não tiver, faz outra coisa.
  > >
  > > Em shell, só pra não ficar off-de-tudo:
  > >
  > > ---começa parouimpar.sh
  > > #!/bin/sh
  > > i=0
  > > while read line; do
  > >   i=$((i+1))
  > >   if [ "$((i%2))" == "0" ]; then
  > >     echo -n "p: "
  > >   else
  > >     echo -n "i: "
  > >   fi
  > >   echo $line
  > > done < .bashrc
  > > ---termina parouimpar.sh
  > >
  > > eliphas@skyfoobar$ ./parouimpar.sh
  > > i: # .bashrc
  > > p:
  > > i: # User specific aliases and functions
  > > p:
  > > i: alias rm='rm -i'
  > > p: alias cp='cp -i'
  > > [...]
  > > eliphas@skyfoobar$
  > >
  > > Em AWK, a variável NR é o número da linha corrente.
  > >
  > > $ awk '{ if (NR%2) printf("i: "); else printf("p: "); print $_; }'
  > .bashrc
  > >
  > > --
  > > Eliphas
  > >
  > >
  > >  ---------------------------------------------------------------------
  > > 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
  > >
  > >
  > >
  > >
  > >  *Yahoo! Grupos, um serviço oferecido por:*  PUBLICIDADE
  > >  <
  > 
http://br.ard.yahoo.com/SIG=12fmemfha/M=393477.7870451.8719931.2369893/D=brclubs/S=2137111254:HM/Y=BR/EXP=1139336596/A=3254979/R=0/id=noscript/SIG=12k5j3olb/*http://www.momentumquiz.com.br/index.php?md5ref=372BBEE98E9544bd8B2F9E87847EEEBE_3
  > >
  > > ------------------------------
  > > *Links do Yahoo! Grupos*
  > >
  > >    - Para visitar o site do seu grupo na web, acesse:
  > >    http://br.groups.yahoo.com/group/shell-script/
  > >
  > >    - Para sair deste grupo, envie um e-mail para:
  > >    address@hidden<
  > address@hidden?subject=Unsubscribe>
  > >
  > >    - O uso que você faz do Yahoo! Grupos está sujeito aos Termos do
  > >    Serviço do Yahoo! <http://br.yahoo.com/info/utos.html>.
  > >
  > >
  >
  >
  > --
  > Tiago B Peczenyj
  > Linux User #405772
  >
  > echo 435991959574767208964049173891616024402182829083447460457482P | dc
  >
  >
  > [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
  >
  >
  >
  >
  >
  >
  >
  >


  --
  Bruno Fialho Marques Gola <address@hidden>
  http://www.brunogola.com.br
  Cel: (11) 9294-5883


  [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




   




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



reply via email to

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