O find é um comando muito útil nos sistemas Linux e pode ser utilizado de maneiras mais complexas para realizar determinadas ações. Neste artigo, disponibilizado pela IBM, Bill Zimmerly demonstra algumas técnicas avançadas para o utilização do comando find. Veja o texto completo em
LinuxSecurity Brasil.
Um exemplo seria esse script:
#!/bin/bash
n=1
echo "Criando lista de músicas, aguarde..."
LISTA=`find ~/Desktop/Downloads/musicas -name *.ogg -print0`
for x in $LISTA; do
echo "A música n° $n é: $x"
((n++))
done
Com aspas duplas na variável $LISTA, o comando imprime uma única linha enorme, ignorando as quebras de linha. Sem as aspas, ele processa errado palavras com espaços.
Qual a solução? Usar perl?
Obs: este é um script inútil, apenas serve para exemplificar meu problema :-)