Recorte uma parte de um nome de arquivo (lote de janelas)

1

Eu tenho arquivos com nomes assim:

cam1(word1 word2 wordN) (24-04-2012 00-11-13).mpg
cam2(word1 word2 wordN) (24-04-2012 00-11-13).mpg
cam3(word1 word2 wordN) (24-04-2012 00-11-13).mpg

Precisa cortar (palavra1 palavra2 palavra3) e substituir espaços por _ Arquivos renomeados esperados:

cam1_(24-04-2012_00-11-13).mpg
cam2_(24-04-2012_00-11-13).mpg
cam3_(24-04-2012_00-11-13).mpg

Nos primeiros colchetes pode haver um número diferente de "palavra". Timestamp é sempre o mesmo.

    
por Igor 25.04.2012 / 18:22

2 respostas

0

Adicione este código a um arquivo batch.

For /f "tokens=1-3 delims=(" %%a in ('dir *.mpg /b') do call :DoRename "%%a" "%%b" "%%c"

Goto :eof
:DoRename
  Set SrcFile=%1(%2(%3
  Set SrcFile=%srcfile:"=%

  Set DestFile=%1 (%3
  Set DestFile=%DestFile:"=%
  Set DestFile=%DestFile: =_%

  Rename "%SrcFile%" "%DestFile%"
    
por 25.04.2012 / 20:25
0

Eu usei o Bulk Rename Utility para esse tipo de coisa. Ele permite remover, editar, substituir ou adicionar números a nomes de arquivos facilmente. E faz arquivos em lote. Eu uso o tempo todo para renomear fotos e videoclipes, assim como arquivos mp3.

    
por 25.04.2012 / 18:28