Это поможет:
ls gas13_14.5.png |\
gawk 'match($0, /^([a-z]+)([0-9]+)_([0-9]+)(\..*)$/,a){print $0,a[1]""a[2]+a[3]""a[4]}'| xargs -n2 mv
Вывод ls передается в awk, затем мы используем $ 0, чтобы напечатать строку без изменений, другими словами, оригинальное имя файла.
Следующим шагом является использование групп захвата регулярных выражений для изменения имени файла (a[1]""a[2]+a[3]""a[4]
).
Результатом является комбинированный вывод, состоящий из последовательности old_file_name и new_file_name .
Наконец, мы передаем результирующий канал через xargs, чтобы получить эффективное переименование файлов.