Sua formulação costumava funcionar nas versões anteriores do Windows, então eu realmente o definiria como um novo bug no Windows 10.
Você pode usar o comando forfiles assim:
forfiles /M *.tif /C "cmd /c ren @file @fname-org.tif"
Estou usando o Windows 10 e gostaria de renomear um número de arquivos que estão no diretório C:\temp\bildgroesse
.
Os arquivos são denominados test1.tif
, test2.tif
e assim por diante.
Então eu escrevi a linha de comando:
cd \temp\bildgroesse
rename C:\temp\bildgroesse\ *.tif *-org.tif
Eu também tentei:
cd \temp\bildgroesse
rename C:\temp\bildgroesse\ * *-org
O resultado é nos dois casos: test1.tif_org.tif
, test2.tif_org.tif
e assim por diante. Então o Windows usa a extensão como nome de arquivo.
Alguém sabe como resolver esse problema?
Sua formulação costumava funcionar nas versões anteriores do Windows, então eu realmente o definiria como um novo bug no Windows 10.
Você pode usar o comando forfiles assim:
forfiles /M *.tif /C "cmd /c ren @file @fname-org.tif"
Você deve usar a solução forfiles
, mas é como adicionar uma string a um nome de arquivo antes de sua extensão usando somente o comando rename
.
ren *.ext ????????????string.ext
Então, no seu caso, você usaria
cd \temp\bildgroesse
ren *.tif ????????????-org.tif
Notas:
Isso faz não funcionar da mesma forma se um arquivo tiver mais de um .
em seu nome. O curinga de ponto de interrogação corresponde a um único caractere, desde que esse caractere não seja .
, portanto, somente os caracteres antes do primeiro .
aparecerão no novo nome de arquivo. A solução forfiles
não tem essa restrição.
O número de pontos de interrogação precisa ser maior ou igual ao tamanho do nome de arquivo mais longo (sem sua extensão).
Uma vez que você cd
para um diretório, você não precisa digitar o caminho completo para os arquivos. Como alternativa, se você digitar o caminho completo, não será necessário cd
.
ren
é um alias para rename
.
Mais informações sobre ren
/ rename
, incluindo o uso de curingas, podem ser encontradas aqui .
Tags command-line windows