Expansão de variaveis em Bash:
${var:N} Retorna o texto à partir da posição 'N'
${var:N:tam} Retorna 'tam' caracteres à partir da posição 'N'
while read LINHA; do
echo \'${LINHA:0:3}\'
echo \'${LINHA:3:23}\'
echo \'${LINHA:23:26}\'
done < /o/seu/arquivo.txt
Resultado:
'EDI'
'SHIP111111 '
' 222222A'
é claro que vc precisa fazer a conversão do que vc pega com o cut para
o que vc pega com a expansão de variaveis. coloquei as aspas simples
pra vc ver ate onde vai cada coisa, sacou?
On 7/10/06, CC LATAM Cardoso Antonio <[EMAIL PROTECTED]> wrote:
> Bom dia,
>
>
>
> Sou iniciante em shell e estou precisando de uma ajuda.
>
>
>
> Estou fazendo a leitura de um arquivo onde necessito retirar as informações
> conforme as colunas pré-determinadas.
>
>
>
> Exemplo dos dados dentro do arquivo:
>
> EDISHIP111111 222222A
>
>
>
> Estou fazendo da seguinte maneira:
>
>
>
> while read FILE
>
> do
>
> A=`echo ${FILE} | cut -c1-3`
>
> B=`echo ${FILE} | cut -c4-23`
>
> C=`echo ${FILE} | cut -c24-26`
>
> done</tmp/tmpfile.txt
>
>
>
> A variável A esta saindo com o valor correto, mas o restante não.
>
> Notei que o shell esta removendo os espaços em branco, que no meu caso não
> poderá ocorrer.
>
>
>
> Preciso do valor incondicional da linha, com espaços em branco.
>
>
>
> Alguém pode me ajudar
>
>
>
> Grato
>
> Antonio
>
>
>
>
>
> [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: [EMAIL PROTECTED]
> ---------------------------------------------------------------------
> Esta lista é moderada de acordo com o previsto em
> http://www.listas-discussao.cjb.net
> ---------------------------------------------------------------------
> Servidor Newsgroup da lista: news.gmane.org
> Grupo: gmane.org.user-groups.programming.shell.brazil
>
>
> Links do Yahoo! Grupos
>
>
>
>
>
>
>
>
>
--
Tiago B Peczenyj
Linux User #405772
# cd /pub
# more beer
---------------------------------------------------------------------
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: [EMAIL PROTECTED]
---------------------------------------------------------------------
Esta lista é moderada de acordo com o previsto em
http://www.listas-discussao.cjb.net
---------------------------------------------------------------------
Servidor Newsgroup da lista: news.gmane.org
Grupo: gmane.org.user-groups.programming.shell.brazil
Links do Yahoo! Grupos
<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/shell-script/
<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]
<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html