[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] explode() no shell...
From: |
SuSE List |
Subject: |
Re: [shell-script] explode() no shell... |
Date: |
Tue, 23 Nov 2004 15:33:12 -0200 |
User-agent: |
Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.7.2) Gecko/20040803 |
Ola galera,
Ola Fernando,
Eu fui estudar sobre o que você postou logo abaixo e brinquei um pouco
com o shell e olha só o que consegui:
Eu tenho este trecho de arquivo:
2004-11-01;08:21:59;E52ED460EF;address@hidden;726;1
E consigo ter isso na minha saida:
campo10=2004-11-01
campo20=08:21:59
campo30=E52ED460EF
campo41=suse_list
campo42=mispo.com.br
campo50=726
campo60=1
Veja como ficou meu script:
#!/bin/bash
#
# /tmp/teste
arq=teste.txt
oldIFS=$IFS
cat $arq | while read linha; do
IFS=";"
set - $linha
echo campo10=$1
echo campo20=$2
echo campo30=$3
echo $4 | while read linha2; do
oldIFS1=$IFS
IFS="@"
set - $linha2
echo campo41=$1
echo campo42=$2
IFS=$oldIFS1
unset oldIFS1
done
echo campo50=$5
echo campo60=$6
IFS=$oldIFS
unset oldIFS
done
Funcionou para o que eu preciso perfeitamente...muito obrigado pela
ajuda....
[]s
Marcus Vinicius
Fernando Lemes da Silva wrote:
Nunca fiz isso, mas olhando um e-mail que o Aurelio mandou acho que
dá pra fazer isso:
oldIFS=$IFS
IFS=$delimitador
set - $linha
echo campo1=$1
echo campo2=$2
echo campo3=$3
..
IFS=$oldIFS
unset oldIFS
[]'s