Alterar renomeação de cópia padrão no Windows 7

3

Estou tentando permitir que a solução desta pergunta funcione no Windows 7, mas até agora sem sorte:

Qualquer opção para alterar o padrão do Windows XP Copy Here nomeando de "Copy of {name}. {Ext}" para "{name}. {Ext} .copy"

Eu tentei criar o arquivo .cmd, mas não consegui exatamente o que queria.

Minha pergunta básica é supor que existe um arquivo, xxx.ext já em uma pasta. Quando eu copio para a mesma pasta, um arquivo com o mesmo nome, é nomeado como xxx (1) .ext. Eu quero nomear isso como xxx_1.ext. Você poderia por favor me dizer um caminho para isso?

Existe alguma configuração padrão que eu mudei em algum lugar?

    
por Lakshmi Narayanan 05.03.2013 / 19:23

1 resposta

2

Não é exatamente "xxx (1) .ext" no Windows 7. "File Name.ext" é copiado para "File Name - Copy.ext" e, em seguida, "File Name - Copy (2) .ext", " Nome do arquivo - Copiar (3) .ext "e assim por diante. Em vez disso, você quer que "File Name.ext" seja copiado para "File Name_1.ext", "File Name_2.ext" e assim por diante? O arquivo cmd pode ser facilmente modificado de acordo:

for %%f in (%*) do call :try_copy %%f 1
goto :eof

:try_copy
if not exist "%~n1_%2%~x1" goto :copy
call :try_next %1 %2
goto :eof

:copy
copy %1 "%~n1_%2%~x1"
goto :eof

:try_next
if "%2" == "" ( set _next=1 ) else ( set /a _next=%2 + 1 )
call :try_copy %1 %_next%
goto :eof

Editar: Conforme a discussão abaixo, modifique o arquivo em lote para copiar arquivos para uma pasta específica e renomeie sequencialmente:

REM Specify your destination path below without quotes or trailing backslash
set folder=I:\New folder

for %%f in (%*) do call :try_copy %%f 1
goto :eof

:try_copy
if not exist "%folder%\%~n1_%2%~x1" goto :copy
call :try_next %1 %2
goto :eof

:copy
copy %1 "%folder%\%~n1_%2%~x1"
goto :eof

:try_next
if "%2" == "" ( set _next=1 ) else ( set /a _next=%2 + 1 )
call :try_copy %1 %_next%
goto :eof
    
por 05.03.2013 / 21:03