Programación Específica > Programación de Archivos del Sistema

 Variables De Entorno

<< < (3/5) > >>

Zirrosis:
Tienes razon, no existe el End, me lie kon los lenguajes, aunke yo lo uso en los .bat's, como da error, finaliza el programa.

Ke version del CMD tienes???puesto ke a mi me da el path.

Salu2

nausea:
La versión de mi sistema operativo, como he mencionado en mi post anterior es

--- Código: Text ---Microsoft Windows XP [Versión 5.1.2600] .

De todas formas, en esta página de Microsoft ya advierten de que el parámetro %0 (Que, por cierto, no es una variable porque las variables tienen la forma %v%) no se comporta de la misma forma en todos los sistemas operativos.

Por esos creo que el uso de %CD% (que si es una variable) es más seguro.

Saludos
n.

Zirrosis:
Ok....eso de ke %0 no es una varaible lo pongo en duda...ya ke una varaible es una "etiketa" por asi decirlo ke varia su contenido. Justo al contrario ke una Constante.... ;)  ;)  (no ahce falta expliakr ke es todo esto). Bien, pues, ya ke al poner %0 da la ruta, y como la ruta es varaibles, pues yo lo konsidero komo una variable.... ;)  ;)

Aunke eso si, siempre y kuando %0 se ejecute desde un .bat, desde la Shell %00 vale %0, no vale el nombre de la ruta.... ;)  ;)

nausea:
Pero que %0 no sea una varible no quiere decir que sea una constante. Porque %0 es un parámetro. ¿más explicaciones?

Pues más. Cuando se ejecuta un .bat puede hacerse con parámetros o si ellos. Por ejemplo:


--- Código: Text ---unaPrueba.bat param1 param2 param3 
Los parámetros se recogen dentro de un .bat mediante las "etiketas" %1, %2, etc. Ejemplo


--- Código: Text ---copy %1 %2 
En este caso param1 puede ser un nombre de fichero y param2 un directorio. Pero también puede hacerse asignación. Otro ejemplo


--- Código: Text ---set %miVariable% = %3 
oooohhh. ¿Que es esto? Pues si quieres una variable, tendrás que definir un nombre entre 2 signos %, no sólo con uno porque si solamente tiene un signo % es una referencia a un parámetro. Si %1 fuera una variable, el siguiente ejemplo funcionaría

--- Código: Text ---set %1 = 34 pero, de hecho, da error.

¿Y que pasa con %0? Pues que el parámetro %0 siempre se pasa, aunque no se escriba ningún parámetro detras de la llamada al .bat. ¿Y cuanto vale ese parámetro? El nombre del .bat con o sin path según sea como hayas hecho la llamada al .bat. Es decir, si al . bat se le llama

--- Código: Text ---miBat  la respuesta será
--- Código: Text ---miBat Si la llamada la haces
--- Código: Text ---d:&#092;undirectorio&#092;otrodirectorio&#092;masdirectorios&#092;miBat.bat  el valor de %0 es
--- Código: Text ---d:&#092;undirectorio&#092;otrodirectorio&#092;masdirectorios&#092;miBat.bat 
Por esa misma razón, tu pretendida solución no le sirve a antony_soluciones, porque el pide el camino, sin el nombre del .bat y tu solución, en el mejor de los casos le da todo el nombre completo, el del .bat incluido.

La variable,  :huh: , %CD% es la solución que pide antony_soluciones. Que es una variable del sistema que cambia cuando cambias de directorio (Por eso no es una constante) y tampoco es un parámetro, porque no se pasa al .bat

¿Y sabes como se que esto es así? Porque me he abierto una ventana de línea de comandos y he hecho unas pruebas y me he leido algunos manuales. Por tus respuestas se ve que no lo has hecho.

saludos
n.

Zirrosis:
Lo de los aprametros si lo sabia.... ;)  ;)  ;)  lo ke no me expliko es porke a ti solo te sale el nombre del .bat y a mi me sale la ruta+nombre.

De manuales me e leido muchisimos.... ;)  ;)

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

[*] Página Anterior

Ir a la versión completa