A partir da descrição da sua pergunta, estou assumindo que total não. de arquivos em uma pasta não excede 999.
Este é um script bash simples que é executado em seu diretório principal, por exemplo, Modelos:
#!/bin/bash
for i in ./*
do
if [ -d "$i" ]
then
j=001
for k in "$i"/*
do
mv "$k" "$i"/"$i""$j".jpg
j=${j#0}
if [ ${j:0:1} -eq 0 ]
then
j=${j#0}
fi
(( j++ ))
j='printf '%03i' $j'
done
fi
done
Primeiro, ele verificará todos os arquivos em Modelos, seja um diretório ou não, por if [ -d "$i" ]
. Então, para cada arquivo nesse diretório, ele mudará seus nomes por mv "$k" "$i"/"$i""$j".jpg
. E
j=${j#0}
if [ ${j:0:1} -eq 0 ]
then
j=${j#0}
fi
O código acima removerá todos os zeros do início para que você não receba o erro como:
((: 008: value too great for base (error token is "008")
printf: 008: invalid octal number
e
j='printf '%03i' $j'
fará o valor de j
3 dígitos.