Renomeia arquivos em um arquivo de lote

2

Eu quero renomear file1 para file2 usando um arquivo em lotes no Windows 7, mas sem sorte.

Abaixo está o arquivo em lotes:

@echo off
c:
cd\test
ren file1 file2

A mensagem de erro que recebo é

syntax error.

Atualize para minha pergunta: No entanto, para ser mais específico, segue o conteúdo do meu script chamado update.cmd, que será executado como administrador no Windows 7.

Aqui está:

:START
cls
cd C:\Program Files\Autodesk\Revit Structure 2012\Program
ren C:RevitMFC.dll RevitMFC_dll.bak

Quando eu verifico as linhas do programa acima usando cmd.exe como administrador, descobri que a mensagem de erro é "acesso negado".

Microsoft Windows [Version 6.1.7601] Copyright (c) 2009 Microsoft Corporation. All rights reserved.

C:\Users\Ben>cd c:\program files\autodesk\revit structure 2012\program

c:\Program Files\Autodesk\Revit Structure 2012\Program>ren c:revitmfc.dll revitm fc_dll.bak Access is denied.

c:\Program Files\Autodesk\Revit Structure 2012\Program>

Minha pergunta: Como faço para superar este "Acesso negado"?

    
por Ben Bever 07.06.2012 / 22:24

3 respostas

2

Se

ren file1 file2

dá um erro de sintaxe, com certeza existem espaços nos nomes dos arquivos.

Tente isso:

ren "file1" "file2"
    
por 07.06.2012 / 22:47
0

Não deve haver \ após o comando CD .

Tente isto:

@echo off
c:
cd test
ren file1 file2
    
por 07.06.2012 / 22:38
0

Você provavelmente está recebendo o erro "Acesso negado" porque o arquivo ou a pasta é somente leitura. A outra possibilidade é que o arquivo esteja em uso.

Você pode verificar os atributos do arquivo da seguinte maneira. Para verificar os atributos da pasta, deixe de fora o nome do arquivo.

attrib  [[Drive:][Path] FileName]

Aqui é mais informações sobre como usar o comando attrib .

Para renomear o arquivo com o arquivo de lote, você precisará modificar os atributos do arquivo e, possivelmente, a pasta. Depois de renomear o arquivo, altere os atributos de volta.

Palavra de aviso; a alteração do nome de um arquivo de biblioteca de vínculo dinâmico (dll) pode fazer com que o (s) programa (s) ao qual ele está associado parem de funcionar.

    
por 08.06.2012 / 13:41