Найдите строку на имя и переместитесь в имени перед расширением

у меня есть много файлов в другом subdir. Я хотел бы переименовать все названные файлы *-ABC-DE(7 numbers).ext кому: *-DE(7 numbers)-ABC.ext

Действительно ли это возможно?

0
задан 19 February 2018 в 07:53

1 ответ

Учитывая

$ ls *.ext
bar-ABC-DE7654321.ext  foo-ABC-DE1234567.ext

затем

$ rename -v 's/(ABC)-(DE\d{7})/$2-$1/' *.ext
rename(bar-ABC-DE7654321.ext, bar-DE7654321-ABC.ext)
rename(foo-ABC-DE1234567.ext, foo-DE1234567-ABC.ext)

получающийся в

$ ls *.ext
bar-DE7654321-ABC.ext  foo-DE1234567-ABC.ext

нбар тестируют с -n первый

0
ответ дан 30 October 2019 в 23:53

Другие вопросы по тегам:

Похожие вопросы: