Ao invés de realizar uma busca toda vez é possível voltar um diretório depois de invocar a função "varrer_arquivos" na linha 14
1 #!/bin/bash
2 converte_arquivo() {
3 local arquivo_a_ser_convertido=$1
4 local arquivo_sem_extensao=$(ls $arquivo_a_ser_convertido | awk -F. '{ print $1 }')
5 convert $arquivo_sem_extensao.jpg $arquivo_sem_extensao.png
6 }
7 varrer_diretorios() {
8 cd $1
9 for arquivo in *
10 do
11 if [ -d $arquivo ]
12 then
13 varrer_diretorios $arquivo
14 cd ..
15 else
16 converte_arquivo $arquivo
17 fi
18 done
19 }
20
21 varrer_diretorios $1
22
23 if [ $? -eq 0 ]
24 then
25 echo "Conversao realizada com sucesso"
26 else
27 echo "A conversao falhou"
28 fi