Você precisaria ter:
rename -n 's/^([^,]*),\s*(.*)\.ext$/$2 $1.ext/' *
-
Este
^([^,]*),
corresponde a tudo, exceto uma vírgula, até a primeira vírgula vista desde o início do nome do arquivo. -
Este
\s*(.*)\.ext$
corresponde a zero ou mais espaços em branco seguido por qualquer coisa e termina com.ext
. -
As
$2
e$1
são referências anteriores às(.*)
e([^,]*)
, respectivamente.
será renomeado da seguinte forma:
rename(a single file,.ext, a single file.ext)
rename(a single file, some thing.ext, some thing a single file.ext)
rename(file1, A.ext, A file1.ext)
rename(file1, the.ext, the file1.ext)
P, s: remove -n
para renomear os arquivos que são usados para testes.