Esta solução alternativa fez isso por mim. Infelizmente, os nomes dos arquivos estão perdidos. Mas isso não era o que eu procurava.
Use munpack
e canalize a saída em um arquivo:
munpack -C $extrdir $file > attachments
O conteúdo do arquivo attachements
você verá o que foi extraído:
=XUTF-8XBXV2FuZGVydW5nTGFpdHNjaGVuYmFjaDExLkpQRw==X= (image/jpeg)
=XUTF-8XBXV2FuZGVydW5nTGFpdHNjaGVuYmFjaDE3LkpQRw==X= (image/jpeg)
...
Agora faça um loop em cada uma das linhas, verifique se são imagens e renomeie-as:
while read p; do
if [[ $p == *"image"* ]]
then
FLNM=attach_${num}.jpg
IFS=' (' read -a array <<< "$p"
mv "${array[0]}" "$FLNM"
fi
num=$((num + 1))
done <attachements
A saída no diretório será então:
attach_1.jpg
attach_2.jpg
attach_3.jpg