Renomeia arquivos usando cmd e permite duplicar o nome do arquivo

0

Eu tenho meu arquivo de lote que consiste no seguinte comando.

REN "H:\April2012\A04\mr_sudheendra_holla_vaderhobli.pdf.1335780379203.ver1" "mr_sudheendra_holla_vaderhobli.pdf"

Mas se houver arquivos duplicados, o comando não será executado. Eu gostaria que meu comando renomeie o nome do arquivo para *(1).pdf e *(2).pdf etc. se houver duplicatas. Como posso fazer isso?

    
por TechSupport 08.12.2014 / 10:13

1 resposta

0

## Também podemos usar TIMESTAMP: ##

@echo off
for /f "tokens=2 delims==" %%a in ('wmic OS Get localdatetime /value') do set "dt=%%a"
set "YY=%dt:~2,2%" & set "YYYY=%dt:~0,4%" & set "MM=%dt:~4,2%" & set "DD=%dt:~6,2%"
set "HH=%dt:~8,2%" & set "Min=%dt:~10,2%" & set "Sec=%dt:~12,2%" & set "MS=%dt:~15,3%"
set "datestamp=%YYYY%%MM%%DD%" & set "timestamp=%HH%%Min%%Sec%" & set "fullstamp=%YYYY%-%MM%-%DD%_%HH%-%Min%-%Sec%-%MS%"
echo datestamp: "%datestamp%"
echo timestamp: "%timestamp%"
echo fullstamp: "%fullstamp%"
Xcopy /s "D:\folder1\test.xls" "D:\folder2\test_%fullstamp%.xls"
pause

Este é um método de backup simples. Por exemplo, se você estiver modificando um arquivo várias vezes (digamos: D: \ folder1 \ test.xls) e for necessário salvar uma cópia dele depois de várias edições (na pasta: D: \ folder2 \ test. xls). Em seguida, podemos usar o registro de data e hora no nome do arquivo (D: \ folder2 \ test_% fullstamp% .xls), que não substituirá os backups mais antigos.

    
por 31.05.2018 / 13:23