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]