Eu tenho brincado com a implementação perl da ferramenta de renomeação no cygwin e finalmente consegui fazê-la funcionar através da instalação do cpan.
Já faz muito tempo que não brinquei com essas coisas, então estou um pouco enferrujado com minhas coisas de regexp.
basicamente estou apenas tentando renomear um monte de pastas no formato
[2022-10-10] This is a Test - This is a Test (some stuff) [393933939339]
ou
[2022] This is a Test - This is a Test (some stuff) [393933939339]
e mova o material do início delimitado por []
até o final para que pareça
This is a Test - This is a Test (some stuff) [393933939339] [2022-10-10]
ou
This is a Test - This is a Test (some stuff) [393933939339] [2022]
Eu descobri como fazer isso usando parâmetros de posição, mas estou lutando para fazer isso usando correspondência de padrões para[]
rename -n 's/^(.{12})(.*)$/$2 $1/'
fará o trabalho para as pastas com a data completa e obviamente, mas não para as pastas com apenas um ano. Idealmente, gostaria de uma única expressão para processar todos eles.
Acho que pode ser complicado pelo fato de [] serem tratados como operadores, portanto, pode ser necessário escapar de alguma forma.
Qualquer ajuda será apreciada.