Encontre uma string no nome e mova na do nome antes da extensão

0

eu tenho muitos arquivos em subdiretório diferente. Gostaria de renomear todos os arquivos nomeados %código% para *-ABC-DE(7 numbers).ext

É possível?

    
por Fabio Brassini 19.02.2018 / 15:47

1 resposta

0

Dado

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

então

$ 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)

resultando em

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

Teste de NB com -n primeiro

    
por steeldriver 19.02.2018 / 16:19