Ms-Dos - Batch con IF NOT EXIST

   
Vista:

Batch con IF NOT EXIST

Publicado por Nando (1 intervención) el 02/10/2013 12:19:47
Buenos días, quiero hacer un batch que compruebe si existe una ruta, si existe ejecuta el código y sino, mapea la unidad.

Estoy probando con un simple If, pero no me funciona bien:

1
2
3
4
5
6
7
8
9
10
11
echo off
cls
echo esto es una prueba
pause >nul
If not exist "y:\\Servidor\Datos" (
	                                   echo Si existe
		             pause
	                               ) ELSE (
		            echo No existe
		            pause
		         )

La ruta está en un servidor.

Cuando ejecuto el batch y la unidad está mapeada, muestra el mensaje "Si existe"
Desconecto la unidad Y: y ejecuto el batch, muestra el mensaje "Si existe", cuando entiendo que debería mostrar el mensaje "No existe".

He probado de todo, a poner la ruta sin comillas, con la \\ , etc...

Espero que me podáis ayudar, gracias de antemano.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
información
Otras secciones de LWP con contenido de Ms-Dos
- Cursos de Ms-Dos
- Temas de Ms-Dos
información
Cursos y Temas de Ms-Dos
- Manual de MS- DOS
- MS-DOS knowledge base articles
- Comandos de Ms-Dos
Imágen de perfil de Antoni Masana

Batch con IF NOT EXIST

Publicado por Antoni Masana (269 intervenciones) el 03/10/2013 06:29:22
El comando IF {NOT} EXIST verifica si existen solo ficheros, no sirve para directorios, ni rutas ni discos y otras cosas.

Una opción es decirle cualquier fichero *.* pero esto tampoco es una garantia porque si la ruta no tiene ficheros seguiremos sin saber que existe.

Otra opción y es la que utilizo siempre es preguntar por el fichero que siempre existe

1
2
3
4
5
6
7
8
9
10
11
12
echo off
cls
echo esto es una prueba
pause >nul
 
If not exist "y:\\Servidor\Datos\NUL" (
   echo Si existe
   pause
) ELSE (
   echo No existe
   pause
)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Batch con IF NOT EXIST

Publicado por amparitohijo (3 intervenciones) el 20/12/2013 13:30:07
Buenas,

Otro archivo que siempre existe dentro de la ruta, es el punto "." al final de la barra "\"

1
2
3
4
5
6
7
IF NOT EXIST "y:\\Servidor\Datos\." (
   ECHO No existe
   PAUSE
) ELSE (
   ECHO Si existe
   PAUSE
)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar