grazie all'importantissimo aiuto di greyfox (che ringrazio ancora) sono arrivato a queste modifiche, in realtà il codice è identico ho usato solo qualche ciclo annidato.

codice:
#!/bin/bash
# script per rinominare e convertire immagini

echo "inserisci il percorso" #path in cui si trovano le immagini
read sorgente

#estensione delle immagini da convertire
echo "inserisci estensione iniziale senza il punto"
read estensione

#estensione delle immagini convertite
echo "inserisci estensione finale senza il punto"
read estensione1

cifra=0

if [[ -z  "$(convert --version 2> /dev/null)" ]]
then
  echo "il pacchetto imagemagick è necessario per la conversione"
  for img in $(ls "$sorgente"/*."$estensione1"); do
    cifra=`expr $cifra + 1`
    mv "$img" "$sorgente"/"img_0$cifra"."$estensione1"
  done
else
  echo "rilevato convert, inizio conversione immagini"
  for img in $(ls "$sorgente"/*."$estensione"); do
    convert "$img" "$img"."$estensione1"
  done
  for img in $(ls "$sorgente"/*.*."$estensione1"); do
    cifra=`expr $cifra + 1`
    mv "$img" "$sorgente"/"img_0$cifra"."$estensione1"
  done
  for img in $(ls "$sorgente"/*."$estensione"); do
    rm "$img"
  done
fi

exit 0
l'ho testato e pare funzionare correttamente in entrambi i casi, sia che imagemagick sia installato oppure no.

naturalmente nel caso non lo fosse la conversione non può aver luogo e rimane la sola possibilità di rinominare le immagini.

se avete qualche altro suggerimento/critica per migliorarlo dite pure