Renomeando arquivos em lote a partir da linha de comando

Renomeando arquivos em lote a partir da linha de comando

Tenho arquivos com os seguintes nomes:

1_shahlirtsb_p.mp3_103899.mp3
2_shahlirtsb_p.mp3_103898.mp3
3_shahlirtsb_p.mp3_103897.mp3
4_shahlirtsb_p.mp3_103896.mp3
5_shahlirtsb_p.mp3_103895.mp3
6_shahlirtsb_p.mp3_103894.mp3
7_shahlirtsb_p.mp3_103893.mp3

Como posso renomeá-los na linha de comando (usando expressão regular) para 1_shahlir.mp3,, 2_shahlir.mp3e assim por diante...

Responder1

renameTente usar o comando baseado em perl, por exemplo

rename -n -v -- 's/tsb_p[.]mp3_\d+//' *.mp3

Na verdade, ele não renomeará seus arquivos até que você remova a -nopção (sem operação).

informação relacionada