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

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

Re: [shell-script] principiante pergunta ...


From: moysespr
Subject: Re: [shell-script] principiante pergunta ...
Date: Fri, 30 Jan 2004 18:51:51 -0800 (PST)

Como citado ontem em outras situações a variável de ambiente IFS afeta isso.
Sugestão: você não precisa no seu caso colocar o conteudo em uma variável
para ir pegando depois com o for, pegue direto do arquivo.
Esqueça a "aux", faça só um "
for i in `<lista`
ou
for i in `cat lista`
Mas antes do for tem de escrever:
IFS='
'
Assim mesmo com apóstrofo em 1 linha e na outra. Além disso se o seu script
usa  em outros pontos o IFS o certo é retornar ao valor original depois deste
for, para não ter problemas em algum outro lugar.

Por isso eu sugiro que não use "for" aqui, mas sim um simples read em um
while. Nas linhas do seu for, você usa:

while read i
do
...
...
done<lista

Qualquer dúvida é só dar um alou.


--- Jean Carlos <address@hidden> wrote:
> Boa tarde pessoal...
> 
> Tenho um arquivo onde as linhas são separadas pelo delimitador ","
> existem dois campos:
> 
> nomeusuario funcao,email@dousuario   (arquivo com 600 linhas)
> 
> (na realidade é um catálogo de endereços separado por virgula)
> 
> Estou tentando com o shell abaixo ( devagar eu chego lá)... ler este
> arquivo e separando os campos e depois montando um outro arquivo de
> catálogo no padrão VCARD, mas  a minha variável "aux" está passando para
> o "for" os nomes até encontrar um espaço em branco, ou seja o `cat
> lista` está usando o espaço em branco para delimitar...
> Onde estou errando ?? 
> 
> ------------------------------------------------
> 
> aux=`cat lista`
> for i in $aux
> do
> des=`echo $i | cut -d, -f1`
> mail=`echo $i | cut -d, -f2`
> echo 'BEGIN:VCARD' >> nomes.vcf
> echo 'VERSION:3.0' >> nomes.vcf
> echo 'FN:' $des >> nomes.vcf
> echo 'EMAIL:' $mail >> nomes.vcf
> echo 'N:;' $des >> nomes.vcf
> echo 'END:VCARD' >> nomes.vcf
> echo ' ' >> nomes.vcf
> done
> -----------------------------------------------
> 
> Grato
> 
> jcarlos
> 
> 
> 
> [As partes desta mensagem que não continham texto foram removidas]
> 
> 


__________________________________
Do you Yahoo!?
Yahoo! SiteBuilder - Free web site building tool. Try it!
http://webhosting.yahoo.com/ps/sb/


reply via email to

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