Olá Alain,

 

Creio que a diferença seria na variável IFS, que provavelmente está
configurada para que o delimitador de campos seja <enter> e <espaço>.

Se vc fizer:

 

IFS='

‘

o delimitador padrão passará a ser somente o <enter>.

 

Com isso os resultados ficariam iguais.

 

Espero ter ajudado ;)

 

Gabriel Pereira

 

  _____  

De: shell-script@yahoogrupos.com.br [mailto:[EMAIL PROTECTED]
Em nome de Alain M.
Enviada em: Tuesday, December 18, 2007 4:48 PM
Para: shell-script@yahoogrupos.com.br
Assunto: [shell-script] Sintaxe do for

 

Este pequeno exemplo de uso do for dá dois resultados diferentes. Onde 
está o erro?

#!/bin/bash
for VAR in "a1 b2"; do
echo $VAR
done
echo "------"
LISTA="a1 b2"
for VAR in $LISTA; do
echo $VAR
done

a1 b2
------
a1
b2

O correto me parece que seria ter sempre o loop executado duas vezes, 
uma com cada parametro, mas no primeiro ele está juntando os parametros :(

Agradeço um esclarecimento,
Alain

 



[As partes desta mensagem que não continham texto foram removidas]

Responder a