de todos modos, a ver que cuenta maese Redy de ponerlo como sufijo, porque así las imágenes me quedarían mas ordenadas (chicas_p.jpg inmediatamente después de chicas.jpg)
Si el sufijo fuese conocido, bastaría con:
for i in *.jpg; do
convert -resize bla-bla-bla "$i" "$(basename $i .jpg)-p.jpg"
done
El comando basename extrae de un nombre de fichero toda la parte que corresponde al directorio y deja solo el nombre, y si se pasa un segundo parámetro que será el sufijo y este coincide exactamente con el final del nombre del fichero lo quita también. Luego simplemente hago uso de la sustitución de comando $().
Pero como hemos puesto el patrón múltiple resulta que el sufijo puede ser Jpg, JPEG o cualquiera de las posibles variantes. Así que lo único que se me ocurre es mirar antes cual es el sufijo, para extraerlo tal que así:
for i in *.[jJ][pP]?([eE])[gG]; do
SUFIJO=".${i##*.}"
convert -resize bla-bla-bla "$i" "$(basename $i $SUFIJO)-p$SUFIJO"
done
La expansión ${variable##patrón} sustrae de la variable desde el principio la parte más larga que coincide con el patrón. Luego hay otras expansiones como $(variable%%patron) que hacen lo mismo por el final, pero eso lo dejamos para el curso ¿no?