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

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

Problemas com array shell


From: André Aun
Subject: Problemas com array shell
Date: Thu, 23 Jan 2003 20:18:45 -0200
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2.1) Gecko/20021203

Salve galera,

Seguinte... tenho uma array com o seguinte conteúdo, por exemplo:

deejah@freud:~/backup/scripts/teste$ var=(Arquivo Espacado.mp3 Nome filme.avi)
deejah@freud:~/backup/scripts/teste$ echo ${var[@]}
Arquivo Espacado.mp3 Nome filme.avi

Bom... então são dois nomes de arquivo na váriável. Só que perceberam que no echo foi tudo misturado? Por isso eu dei um jeito de separar desta forma:

deejah@freud:~/backup/scripts/teste$ echo ${var[@]}
Arquivo Espacado.mp3;Nome filme.avi


Então beleza... o ";" delimita o nome do arquivo. Entao posso separá-los depois da seguinte forma:

deejah@freud:~/backup/scripts/teste$ echo ${var[@]} | sed -e 's/;/\n/g'
Arquivo Espacado.mp3
Nome filme.avi

Pronto... só que os arquivos ainda estão com o nome espaçados... o grande problema é o seguinte: quero usar uma linha inteira dessa depois num laço for.... assim:

for file in `echo ${var[@]} | sed -e 's/;/\n/g'`; do
   ls -l $file
done

Só que acontece que ao invés de pegar a linha inteira, ele vai pegar cada palavra separada, assim:

Arquivo
Espacado.mp3
Nome
filme.avi

Eu queria que ele usasse a linha inteira no for... alguém sabe como?

Obs: Eu poderia trocar os espacos com sed, mas não é isso que eu quero. Por enquanto, este tem que ser o nome do arquivo.

[]'s

André Aun



reply via email to

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