none
Verificar a existência de uma pasta (Arquivo .BAT) RRS feed

  • Pergunta

  • Olá pessoal!
    Bom, eu estou construindo um arquivo .bat para instalação de programas automatizada, porém, após instalar um programa atrás do seu parâmetro 'Silent' eu necessito que acontece um teste, algo como...

    if exist %programfiles%\adobe
    echo Instalado.
    else
    echo Não instalado.

    ou

    if no exist %programfiles%\adobe
    echo Não instalado.
    else
    echo Instalado.

    Testar se existe a pasta do Adobe, para saber realmente se ele foi instalado ou não. Ou se alguém souber uma forma mais eficaz. Testes através do registro talvez? Sei lá, aceito sugestões.

    Porém, esse comando só serve para arquivos, e não pastas.
    Alguém poderia me ajuda? Se tem algum outro comando ou modo de fazer esse teste?

    Desde já agradeço
    sábado, 7 de abril de 2012 12:54

Respostas

  • Fiz o teste com a pasta e funcionou.

    IF EXIST "%ProgramFiles(x86)%\Adobe" (
    	echo existe
    ) ELSE (
    	echo ausente
    )

    Quanto ao problema do ELSE pode ser as chaves ") (" não estarem na mesma linha, veja o meu ELSE como está.


    Fábio de Paula Junior


    segunda-feira, 9 de abril de 2012 14:04
    Moderador

Todas as Respostas

  • Achei uma solução, acho que a mais correta...

    Porque não testar se dentro da pasta está o executável pro programa que eu acabei de instalar?

    Algo do tipo:

    @echo off
    if exist %ProgramfFiles%\Adobe\Reader 10.0\Reader\AcroRd32.exe(
    echo Adobre Reader instalado.
    echo.
    pause
    )
    else(
    Echo ERRO!
    echo.
    pause
    )
    pause

    Porém, tenho um problema...

    Dá como se o comando 'else' não fosse um comando interno ou externo.

    Alguém sabe porque?


    Jonas Moura

    sábado, 7 de abril de 2012 13:29
  • Fiz o teste com a pasta e funcionou.

    IF EXIST "%ProgramFiles(x86)%\Adobe" (
    	echo existe
    ) ELSE (
    	echo ausente
    )

    Quanto ao problema do ELSE pode ser as chaves ") (" não estarem na mesma linha, veja o meu ELSE como está.


    Fábio de Paula Junior


    segunda-feira, 9 de abril de 2012 14:04
    Moderador
  • Fiz o teste com a pasta e funcionou.

    IF EXIST "%ProgramFiles(x86)%\Adobe" (
    	echo existe
    ) ELSE (
    	echo ausente
    )

    Quanto ao problema do ELSE pode ser as chaves ") (" não estarem na mesma linha, veja o meu ELSE como está.


    Fábio de Paula Junior


    Era este o problema, inclusive até mesmo os espaços entre o ELSE e as chaves.

    Obrigado!


    Jonas Moura

    terça-feira, 10 de abril de 2012 14:39
  • na linha 9 vc colocou um "." junto como echo.

    Experimente inserir assim apenas "@echo" que o erro deve ser tratado.

    segunda-feira, 29 de janeiro de 2018 18:55