Se a instrução no arquivo em lote não estiver funcionando corretamente

1
@ECHO OFF
PAUSE 
IF EXIST "C:\Program Files\NexphaseV6\ECF" (
    ECHO Directory exists! 
    PAUSE
) ELSE (
    MKDIR "C:\Program Files\NexphaseV6\ECF" 
    ECHO Directory made!
)
PAUSE

Quando executo o arquivo de lote acima, sempre obtenho os resultados opostos do que espero.

Portanto, se o diretório existir, ele diz "Diretório Feito!" e, se não existir, ele diz "O Diretório Existe!"

É basicamente o caminho errado - Por que isso acontece?

    
por Alex 06.05.2015 / 09:11

1 resposta

1

O arquivo em lote parece bem para mim e funciona aqui (contanto que você tenha direitos de criação de diretórios em Arquivos de Programas , então você pode querer executá-lo a partir de um prompt de comando elevado (admin) ).

Uma dica é modificar ligeiramente o teste de existência de diretório. Em vez de:

IF EXIST "C:\Program Files\NexphaseV6\ECF"

você deve usar:

IF EXIST "C:\Program Files\NexphaseV6\ECF\"

Observe a barra invertida. Isso garante que, se houver um arquivo com o mesmo nome, o teste não retornará True.

    
por 06.05.2015 / 09:46