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

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

Re: [shell-script] Problema com o Echo


From: Bruno Gunter Fricke
Subject: Re: [shell-script] Problema com o Echo
Date: Mon, 19 Mar 2007 20:33:48 -0300

O echo é limitado mesmo. Usa o printf ;-)


  ----- Original Message ----- 
  From: address@hidden 
  To: address@hidden 
  Sent: Monday, March 19, 2007 2:42 PM
  Subject: [shell-script] Problema com o Echo


  Salve Salve toda comunidade de Shell Script

  Bem pessoal estou codificando o script abaixo sua função e ler arquivo achar 
o padrao %%Page: 1 1 ate %%Page: 3 3 
  tira um intervalo de texto e cria um novo arquivo, ate ai funciona perfeito e 
me atende bem, o problema e que este e um arquivo
  Postscript possue linhas com mais de 256 caracteres o comando "echo" ate onde 
pesquisei e me informei so consegue echoar ate 256 caracteres (façam a correção 
se estiver errado!!) como vou conseguir echoar linhas com + de 256 caracteres 
caso aja necessidade ????
  Segue o trecho do codigo:

  extrai_auto(){
  ini=1
  fim=3
  flag=1
  flag_cab=1;
  sed -i '1 d' /mnt/local/ArquivosErrados/autos;
  num_autos=$(echo $(sed -n "$=" /mnt/local/ArquivosErrados/autos ))
  auto="$( echo $( rac 1 /mnt/local/ArquivosErrados/autos ))"
  find /mnt/local/ArquivosErrados -name "*.prn" | while read i ;
  do 
  cat "$i" | 
  while read linha; do 
  if [ "${linha:0:13}" = "%%Page: $fim $fim" -o "${linha:0:15}" = "%%Page: $fim 
$fim" -o "${linha:0:17}" = "%%Page: $fim $fim" -o "${linha:0:19}" = "%%Page: 
$fim $fim" -o "${linha:0:21}" = "%%Page: $fim $fim" ]; then 
  flag=1 ;
  let n++;
  auto="$( echo $( rac $n /mnt/local/ArquivosErrados/autos ))"
  ini="$fim" ;
  let fim+=2 ;
  echo "gravando o auto: $auto"
  fi
  if [ "${linha:0:13}" = "%%Page: $ini $ini" -o "${linha:0:15}" = "%%Page: $ini 
$ini" -o "${linha:0:17}" = "%%Page: $ini $ini" -o "${linha:0:19}" = "%%Page: 
$ini $ini" -o "${linha:0:21}" = "%%Page: $ini $ini" ] ; then 
  flag=0 ;
  flag_cab=0;
  fi
  if [ "$flag" -eq 0 ] ; then 
  if [ "$flag_cab" -eq 0 ] ; then 
  cat /mnt/local/ArquivosErrados/cab >> /mnt/local/ArquivosErrados/"$auto";
  flag_cab=1;
  fi
  #Grava dados no arquivo
  ######################## este cara vai ate 256 caracteres preciso de mais 
caracter por linha !!!################
  echo $linha >> /mnt/local/ArquivosErrados/"$auto" ; 
  
############################################################################################
  fi
  done
  done
  }

  Certo quer serei ajudado antecipadamente agradeço

  Uendel

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