Outra alternativa é usar pushd/popd, algo assim:
cd backup
for i in *
do
pushd $i
# faz o que precisa fazer dentro do diretorio
popd # volta para o diretório backup
done
Abraço
--- Em sex, 28/5/10, Bruno Gunter<address@hidden> escreveu:
De: Bruno Gunter<address@hidden>
Assunto: Re: [shell-script] Como fazer um comando dentro de uma série de
diretórios
Para: address@hidden
Data: Sexta-feira, 28 de Maio de 2010, 21:38
Flamarion (esse é o seu nome mesmo?)
Se você qusier uma alternativa a sugestão do Márcio, trabalhe com a variável
$CDPATH pois ela funciona exatamente como a $PATH para os comandos, só que
para diretórios.
[]'s
Gunter
Em 28 de maio de 2010 21:33, Márcio Gil<address@hidden> escreveu:
Em 28/5/2010 19:13, Flamarion Jorge escreveu:
O script que eu fiz até entra no primeiro diretório e executa o comando,
mas como eu poderia fazer para entrar no proximo? Como o comando cd ia
saber que tem que entrar no próximo diretório?
for i in `ls -1`
do
cd $i
for a in `ls -1`
do
comando $a
done
done
Você pode fazer assim:
for i in */
do
cd $i
for a in *
do
comando $a
done
cd ..
done
ou assim
origem=`pwd`
for i in */
do
cd $origem/$i
do
comando $a
done
done
ou ainda
for i in */
do
do
comando $i$a
done
done