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

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

Re: [shell-script] selecionar texto por posicoes dentro de um txt


From: groo
Subject: Re: [shell-script] selecionar texto por posicoes dentro de um txt
Date: Fri, 12 Mar 2004 08:31:21 -0300

    resolvi assim:

    #!/bin/sh
    
    NOTA=`echo $LINHA | cut -c8-13`
    PESO=`echo $LINHA | cut -c14-25`

    for ARQUIVO in `ls *.TXT`

    do

    for LINHA in `cat $ARQUIVO | grep -v 313 | awk -F ' ' '{print $2 $9}'`
    do
    echo "$NOTA $PESO" >> notapeso.txt
    done
    done

    num tah muito lindo mas funfou.

    Eric Anderson
    CPD Via Net SAO
    11-66432800
    11-96427554
  ----- Original Message ----- 
  From: Rodolfo Villanova - TmS Brasil 
  To: Shell-Script 
  Sent: Thursday, March 11, 2004 5:14 PM
  Subject: RES: [shell-script] selecionar texto por posicoes dentro de um txt


  Caramba,

  Fiz duas ca... das grandes, camaradas!
  É no que dá enviar sem testar antes!

  Vou corrigir:

  No primeiro loop, retirar a linha que contem a atribuição à variável VAR.
  Fica assim:

  while read -r VAR resto
  do
    PRI=`echo $VAR | cut -c10-20`
    SEG=`echo $VAR | cut -c45-47`
  done < /diretorio/arquivo_dados.txt


  No segundo loop, reescrevo, pois é pra trabalhar com 3 campos:

  while read -r VAR1 VAR2 VAR3 resto
  do
    PRI=`echo $VAR1 | tr -s " " " " | cut -d" " -f1 | cut -c10-20`
    SEG=`echo $VAR3 | tr -s " " " " | cut -d" " -f3 | cut -c9-11
  done < /diretorio/arquivo_dados.txt


  Agora sim! (e desculpem-me pela pressa!)

  --------------------------
  Rodolfo Villanova

  -----Mensagem original-----
  De: groo [mailto:address@hidden]
  Enviada em: quinta-feira, 11 de março de 2004 16:27
  Para: Rodolfo Villanova - TmS Brasil
  Assunto: Re: [shell-script] selecionar texto por posicoes dentro de um txt


  valew

  eu nao agredeço todas as respostas por falta de tempo e pq acho q num
  precisa neh?

  []´s

      Eric Anderson
      CPD Via Net SAO
      11-66432800
      11-96427554
  ----- Original Message -----
  From: Rodolfo Villanova - TmS Brasil
  To: address@hidden
  Sent: Thursday, March 11, 2004 3:06 PM
  Subject: RES: [shell-script] selecionar texto por posicoes dentro de um txt


  Fala, Bro!

  Se o <espaço> que está contido na linha abaixo possuir tamanho fixo, é
  possível fazer assim:

  VAR="ericandersonmartinsmiranda 31071972 ruaantoniomariab"
  PRI=`echo $VAR | cut -c10-20`
  SEG=`echo $VAR | cut -c45-47`

  Como provavelmente essa linha deve fazer parte de um lote desse tipo de
  linha, então basta colocar essas linha dentro de um loop:

  while read -r VAR resto
  do
    VAR="ericandersonmartinsmiranda 31071972 ruaantoniomariab"
    PRI=`echo $VAR | cut -c10-20`
    SEG=`echo $VAR | cut -c45-47`
  done < /diretorio/arquivo_dados.txt

  ou ainda, usando awk:

  awk '{ print(substr($0,10,10), substr($0,45,3))}'
  /diretorio/arquivo_dados.txt


  Já se os espaços forem de tamanho variável, é melhor tratar os dados como
  campos:

  while read -r VAR resto
  do
    VAR="ericandersonmartinsmiranda 31071972 ruaantoniomariab"
    PRI=`echo $VAR | tr -s " " " " | cut -d" " -f1 | cut -c10-20`
    SEG=`echo $VAR | tr -s " " " " | cut -d" " -f3 | cut -c9-11
  done < /diretorio/arquivo_dados.txt

  ou com awk:

  awk '{ print(substr($1,10,10), substr($3,9,3))}'
  /diretorio/arquivo_dados.txt

  Beleza?

  Boa sorte!
  -----------------
  Rodolfo Villanova


  > -----Mensagem original-----
  > De: groo [mailto:address@hidden]
  > Enviada em: quinta-feira, 11 de março de 2004 14:23
  > Para: address@hidden
  > Assunto: [shell-script] selecionar texto por posicoes dentro de um txt
  >
  >
  >     se eu tenho um arkivo com linhas assim:
  >
  >
  > ericandersonmartinsmiranda<espaço>31071972<espaco>ruaantoniomariab
  > essa<espaco>466
  >
  >     gostaria de saber como eu posso pegar apenas o texto do
  > caracter 10 ao 20 e do 45 ao 47.
  >
  >     sds
  >
  >     Eric Anderson
  >     CPD Via Net SAO
  >     11-66432800
  >     11-96427554
  >
  >
  > [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.listasdiscussao.cjb.net
  ---------------------------------------------------------------------

  Links do Yahoo! Grupos
  Para visitar o site do seu grupo, acesse:
  http://br.groups.yahoo.com/group/shell-script/

  Para sair deste grupo, envie um e-mail para:
  address@hidden

  O uso que você faz do Yahoo! Grupos está sujeito aos:
  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
  ---------------------------------------------------------------------





  Links do Yahoo! Grupos

  Para visitar o site do seu grupo, acesse:
  http://br.groups.yahoo.com/group/shell-script/

  Para sair deste grupo, envie um e-mail para:
  address@hidden

  O uso que você faz do Yahoo! Grupos está sujeito aos Termos do Serviço do
  Yahoo!.




  Esta mensagem foi verificada pelo E-mail Protegido Terra.
  Scan engine: VirusScan / Atualizado em 10/03/2004 / Versão: 1.4.1
  Proteja o seu e-mail Terra: http://www.emailprotegido.terra.com.br/




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




------------------------------------------------------------------------------
  Links do Yahoo! Grupos

    a.. Para visitar o site do seu grupo, acesse:
    http://br.groups.yahoo.com/group/shell-script/
      
    b.. Para sair deste grupo, envie um e-mail para:
    address@hidden
      
    c.. O uso que você faz do Yahoo! Grupos está sujeito aos Termos do Serviço 
do Yahoo!. 




------------------------------------------------------------------------------
  Esta mensagem foi verificada pelo E-mail Protegido Terra.
  Scan engine: VirusScan / Atualizado em 10/03/2004 / Versão: 1.4.1
  Proteja o seu e-mail Terra: http://www.emailprotegido.terra.com.br/ 



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



reply via email to

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