Recebendo Valor de String contendo Espaço [RESOLVIDO]

1. Recebendo Valor de String contendo Espaço [RESOLVIDO]

André Soares
aluizs

(usa CentOS)

Enviado em 04/02/2013 - 16:09h

Boa Tarde !

Preciso da ajuda de vocês.

Sou iniciante em ShellScript, e estou fazendo um leitor de arquivo, e dependendo do inicio do registro, solta diversas saídas.

A princípio está funcionando, porém notei uma situação, que segue:

1) O registro que estou lendo é posicional;
2) Em um certo momento, dependendo da posição inicial do registro, eu gravo o seguinte:

COMPLEM=`expr substr "$linha" 6 10000`
echo "TDETL"${COMPLEM} >> $TDETL

Porém a origem temos o seguinte:

'0000000067SATSPL1004 000000010000P0000000000000005000000000000000'

No meu arquivo de saída está gravando:

'0000000067SATSPL1004 000000010000P0000000000000005000000000000000'

3) Por se tratar de um registro posicional, preciso que grave inclusive os espaços, e na hora de gravar está transformando toda cadeia de espaços em um único espaço.

Alguém pode me ajudar ?





  


2. MELHOR RESPOSTA

Luís Fernando C. Cavalheiro
lcavalheiro

(usa Slackware)

Enviado em 04/02/2013 - 16:26h

aluizs escreveu:

Boa Tarde !

Preciso da ajuda de vocês.

Sou iniciante em ShellScript, e estou fazendo um leitor de arquivo, e dependendo do inicio do registro, solta diversas saídas.

A princípio está funcionando, porém notei uma situação, que segue:

1) O registro que estou lendo é posicional;
2) Em um certo momento, dependendo da posição inicial do registro, eu gravo o seguinte:

COMPLEM=`expr substr "$linha" 6 10000`
echo "TDETL"${COMPLEM} >> $TDETL

Porém a origem temos o seguinte:

'0000000067SATSPL1004 000000010000P0000000000000005000000000000000'

No meu arquivo de saída está gravando:

'0000000067SATSPL1004 000000010000P0000000000000005000000000000000'

3) Por se tratar de um registro posicional, preciso que grave inclusive os espaços, e na hora de gravar está transformando toda cadeia de espaços em um único espaço.

Alguém pode me ajudar ?




Muda o echo para
echo "TDETL$COMPLEM" >> $TDETL 






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts