Aqui está uma maneira (coloque-a em um arquivo e execute-a com qualquer shell POSIX como bash
ou ksh
):
cd ~/somefolder/ || exit 1
for f in *.png
do
case $f in
(tn_*) continue ;;
(*) convert "${f}" -resize 50%x50% "tn_${f}" ;;
esac
done
Com os shells modernos, o case
construct também pode ser substituído por um comando condicional terser:
cd ~/somefolder/ || exit 1
for f in *.png
do
[[ "$f" != tn_* ]] && convert "${f}" -resize 50%x50% "tn_${f}"
done
(Mas esse código é da memória e não foi testado, portanto inspecione o comando convert
sobre a sintaxe real de redimensionamento e tente primeiro em alguns diretórios de amostra em alguns arquivos de amostra.)