Un poco mas (lo pongo en otro post para no hacerlo tan extenso...)CONTINUA.... Cuando deseas ejecutar un programa, sobre todo en línea de comandos, pero tambien en otros casos, si no lo ejecutas desde el mismo directorio donde está el ejecutable, es posible que el sistema operativo no sepa donde encontrarlo, a él o a alguno de los componentes que necesite para funcionar, dando un mensaje de error.
Por ejemplo si tenemos un servidor mysqld y queremos arrancarlo desde la linea de comandos, deberiamos o bien movernos hasta c:\mysql\bin (o donde quiera que este el ejecutable) o bien desde el directorio que nos encontremos escribir el path integro, por ejemplo:
C:\WINDOWS>C:\mysql\bin\mysqld.exeEn cambio, si tuvieramos c:\mysql\bin en nuestro PATH, podriamos ejecutar cualquier programa situado dentro de bin desde cualquier directorio, sin movernos hasta allí ni escribir el path completo.
Por tanto mediante el comando PATH indicamos a DOS las rutas de búsqueda de programas ejecutables. De hecho, al instalarlos, muchos programas añaden automáticamente entradas en autoexec.bat indicando su propio path, lo que a su vez puede ser fuente de problemas, ya que un PATH indebidamente configurado puede dejar sin efecto el anterior, y porque el comando PATH tiene una importante limitación en cuanto a numero máximo de valores que puede almacenar.
Para comprobar cual es el valor actual de PATH simplemente abre una sesion de DOS, teclea PATH y pulsa enter, y veras las rutas que tiene almacenadas. Normalmente un PATH tendrá como mínimo la ruta C:\windows y c:\windows\command, lo que quiere decir que los programas que esten en esos directorios podrán ser ejecutados en linea de comandos desde cualquier otra carpeta del sistema, sin necesidad de movernos hasta la carpeta del ejecutable.
DOS buscará el archivo a ejecutar siempre en primer lugar en el directorio actual, y solo si allí no lo encuentra, sucesivamente en cada una de las rutas especificadas en PATH, de izquierda a derecha. Este dato es importante si vas a ejecutar un archivo del cual tienes varias copias con el mismo nombre.
Un ejemplo típico es php.ini, necesario para ejecutar PHP que puede estar duplicado en c:\windows y en c:\php. Si tu instalación PHP no funciona como esperas, esta es una de las primeras cosas a comprobar: que se esté cargando el php.ini correspondiente y no otro.
- PATH nos muestra el contenido de la variable PATH.</li>
- PATH nos muestra el contenido de la variable PATH.</li>
- PATH ="" borra el contenido de la actual variable PATH</li>
- PATH ; borra la propia variable PATH</li>
- PATH = nueva ruta o SET PATH = nueva ruta permite cambiar el contenido del valor PATH</li>
- %PATH% es una variable con el contenido de PATH</li>
- PATH = %PATH%;nuevo_directorio añade al PATH el nuevo valor sin borrar el anterior.</li>
NOTA: Cada vez que se establece un nuevo PATH el anterior queda sin efecto, salvo que usemos la opcion %PATH%;nuevopath
NOTA 2: No podemos añadir al path nombres de directorios con espacios en blanco, como Archivos de programa. Para incorporarlos debemos entrar el valor entrecomillado o usar el nombre corto DOS: Archiv~1 etc
NOTA 3: Las distintas rutas se separan por ; y nunca por espacios en blanco
Los limites del PATHTípicamente y por razones históricas (realmente tales limites no tienen sentido en las últimas versiones de DOS) un comando PATH dentro de autoexec.bat no puede exceder de 127 caracteres, de los cuales son usables unos pocos menos, ya que hay que descontar los empleados por la propia palabra PATH, por los caracteres separadores, retornos de carro, etc.
Para sortear este límite hay varios caminos. El mas sencillo es recordar que windows 98/98 ya carga siempre por defecto el PATH C:\WINDOWS;C:\WINDOWS\COMMAND (que viene fijado por el archivo binario IO.sys). Por eso, en autoexec puedes simplemente poner la línea PATH = %PATH%;rutas_adicionales
Lo que NO debe hacerse es poner varias lineas PATH en autoexec.bat, ya que la ultima elimina las anteriores. Recuerda que si tienes varias lineas PATH, para que la ultima conserve las anteriores debe ser PATH=%PATH%;nueva_linea_path
Otra solución es establecer el valor de PATH en el archivo config.sys que no tiene el límite de los 127 carácteres, con las siguientes precauciones:
En este archivo debe usarse la sintaxis SET PATH, no solamente PATH
El PATH de config.sys puede ser sobreescrito si tenemos otro en autoexec.bat. Si instalas algun programa, este posiblemente buscará establecer su propio path en autoexec.bat, pero no en config.sys, por lo que posiblemente tendrás que editarlo a menudo, o te encontrarás que, como el PATH de autoexec se superpone al PATH de config.sys, el valor de tu PATH contendrá unicamente el directorio del ultimo programa instalado.
A diferencia del establecido en autoexec, el PATH de config.sys no puede ser variado durante una sesión.
El comando SET
Con SET podemos fijar variables de entorno, para esa sola sesión (si simplemente lo tecleamos en una ventana de DOS) o con carácter permanente, si lo incluimos en autoexec.bat.
Si lo que deseas es ver todas tus variables de entorno, usa el comando SET sin argumentos.
CLASSPATHEste comando es en todo similar a PATH, si bien las rutas que contiene son aquellas donde el intérprete Java debe buscar las clases Java necesarias para ejecutar cada programa.
Una entrada típica en autoexec.bat sería:
SET CLASSPATH=.;c:\Java\classes_blablabla
Cuando nos encontramos un punto (.) en un path lo que queremos indicar es el directorio actual desde donde ejecutamos la orden.
Espero que te sea util...
Atte..
HAO