O $@ trata os espaços em branco, o $* não. Veja:
# Vamos criar o vetor Frutas
$ Frutas=(pera uva maçã "fruta do conde")
# Agora vamos listar cada Fruta.
# 1a. tentativa
$ for Fruta in ${Frutas[*]}; do echo $Fruta; done
pera
uva
maçã
fruta
do
conde
# Xiii, deu zebra. Quebrou a fruta do conde
# 2a. tentativa
$ for Fruta in "${Frutas[*]}"; do echo $Fruta; done
pera uva maçã fruta do conde
# Novamente zebra, com as aspas o shell não viu o $IFS
# 3a. tentativa
$ for Fruta in ${frut...@]}; do echo $Fruta; done
pera
uva
maçã
fruta
do
conde
# Continua errado. O resultado foi o mesmo da 1a. tentativa.
# 4a. tentativa
$ for Fruta in "${frut...@]}"; do echo $Fruta; done
pera
uva
maçã
fruta do conde
# Agora ficou legal, finalmente o conde vai poder comer a sua fruta... ;)
Abraços,
Julio
Cursos de Shell e Zenity em 2 fins de semana?
- Em SP ligue (11) 2125-4747;
- Em DF ligue (61) 3223-3000 (próxima turma de 1 a 4/10);
- No RJ ligue (21) 2561-0867;
- Turmas fechadas em outras cidades ligue (21) 8112-9988.
2009/9/30 César Vianna <[email protected]>
>
>
> Pessoal, qual a diferença entre $* e $@ ?
>
> --
> César Vianna
> -------------------
> Prefira o que é positivo e múltiplo; a diferença à uniformidade; o fluxo às
> unidades; os agenciamentos móveis aos sistemas.
> Gilles Deleuze & Felix Guattari
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>
>
[As partes desta mensagem que não continham texto foram removidas]