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

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

Problema com o Echo


From: address@hidden
Subject: Problema com o Echo
Date: Mon, 19 Mar 2007 14:42:09 -0300

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]



reply via email to

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