InicioInfoVariables de la shell en cmd

Variables de la shell en cmd

Info9/10/2011
ford_gt1000 dijo::SET ] variable Especifica el nombre de la variable de entorno. cadena Especifica una serie de caracteres asignados a la variable.Escriba SET sin parámetros para ver las variables de entorno actuales.Para utilizar el contenido de la variable, la envolveremos con los signos de porcentaje: %variable%Ejemplo. Definimos dos variables de entorno y las utilizamos:ford_gt1000 dijo::C:>SET micasa=Cocuments and SettingssirioC:>CD %micasa%Cocuments and Settingssirio>Z:>SET m=ping -n 1 www.madrid.orgZ:>%m%Haciendo ping a www.madrid.org [195.77.128.9] con 32 bytes de datos:Respuesta desde 195.77.128.9: bytes=32 tiempo=46ms TTL=247Estadísticas de ping para 195.77.128.9: Paquetes: enviados = 1, recibidos = 1, perdidos = 0 (0% perdidos),Tiempos aproximados de recorrido redondo en milisegundos: mínimo = 46ms, máximo = 46ms, promedio = 46ms:Sin argumentos, nos muestra todas las variables del entorno:ford_gt1000 dijo::C:>SETALLUSERSPROFILE=Cocuments and SettingsAll Users...COMPUTERNAME=SIRIOComSpec=C:WINNTsystem32cmd.exe...micasa=Cocuments and Settingssiriom=ping -n 1 www.madrid.org...Path=C:WINNTsystem32;C:WINNT;C:WINNTSystem32Wbem;C:WINNTsys32;C:Archivos de programaJavajdk1.5.0_04bin;C:Archivos de programaArchivos comunesGTK2.0binPATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.VBS...PROMPT=$P$G...SystemRoot=C:WINNTTEMP=COCUME~1sirioCONFIG~1TempTMP=COCUME~1sirioCONFIG~1Temp...:http://www.palomatica.info/juckar/microsoft/msdos/entorno/variables_de_entorno.html#w2003Si sólo deseamos ver las que comienzan p or USER:ford_gt1000 dijo::I:>set userUSERDOMAIN=SIRIOUSERNAME=andromedaUSERPROFILE=Cocuments and Settingssirio :Si las extensiones de comando están habilitadas (por defecto lo están, ver la ayuda de CMD), algunas variables de entorno son dinámicas y su valor se calcula cuando se hace uso de ellas.ford_gt1000 dijo::%CD% - se expande a la cadena del directorio actual%DATE% - se expande a la fecha actual usando el mismo formato que el comando FECHA%TIME% - hora actual usando el mismo formato que el comando HORA%RANDOM% - número decimal aleatorio entre 0 y 32767%ERRORLEVEL% - se expande al valor de NIVEL DE ERROR actual%CMDEXTVERSION% - número de versión de las Extensiones del comando del procesador.%CMDCMDLINE% - línea de comando que invocó el Procesador de comandos.:ejemplos:ford_gt1000 dijo::C:>echo %time%11:07:54,50c:kk>md tmp%RANDOM% tmp%RANDOM% tmp%RANDOM%c:kk>dir...17/01/2006 11:13 tmp1430217/01/2006 11:13 tmp1084517/01/2006 11:13 tmp3102... Voy a otro directorio y vuelvo:Cocuments and Settingssirioprueba>set w=%CD%Cocuments and Settingssirioprueba>cd C:>cd %w%Cocuments and Settingssirioprueba>:NOTA: Ejecutando [ cmd /e:off ] abrimos una shell con las extensiones de comando deshabilitadas. Comprobar ahora como la variable %DATE% ha dejado de existir. Si ejecutamos una aplicación windows (p.ej. el NOTEPAD), hasta que no finalice la aplicación, la shell estará inoperativa: es monotarea 100% - más cosas en [ cmd /? ]Variables locales a shellLas variables que definamos desde una shell son locales a esa shell y a las subshells, no afectan para nada al entorno de Windows ni a las shells superiores.Cuando cerramos una shell todos los cambios que hubiésemos hecho en las variables se pierden para siempre:ford_gt1000 dijo::Z:>cmd abro una nueva shellZ:>prompt [%COMPUTERNAME%] $P$G cambio la variable PROMPT Z:>cmd si abro otra shell, hereda sus variables Z:>exit Z:>exit pero cuando vuelvo a la shell original ...Z:> el prompt es el original:Variables globales a todas las shellsDesde Windows podemos visualizar, modificar o añadir nuevas variables desde el menú de Propiedades del Sistema (icono Mi PC->Propiedades, o bien Panel de Control->Sistema), seleccionando la pestaña Avanzado, botón Variables de entorno:Ahí podremos ver las variables definidas para el usuario particular y las variables definidas para todo el sistema.SET aritméticoEl comando SET también nos permite definir variables de entorno a partir de operaciones aritméticas simples con números enteros, ya que lleva incorporada una calculadora básica:ford_gt1000 dijo::SET /A expresiónEl modificador /A especifica que la cadena a la derecha del signo de igual es una expresiónaritmética que es evaluada. El evaluador de expresiones es bastante simple y es compatiblecon las siguientes operaciones, en orden de precedencia decreciente: () - agrupar * / % - operadores aritméticos + - - operadores aritméticos << >> - mayús lógica & - AND (de bits) ^ - XOR (de bits) | - OR (de bits) = *= /= %= += -= - asignación &= ^= |= <<= >>= , - separador de expresiónSi se utiliza cualquiera de los operadores lógicos o de módulo, será necesario escribir lacadena entre comillas. Cualquier cadena que no sea numérica en la expresión, serán tratadascomo nombres de la variable de entorno cuyos valores son convertidos a números antes de serutilizados.Si un nombre de la variable de entorno es especificada pero no definida en el entorno actual,entonces se utiliza el valor cero. Esto permite hacer operaciones aritméticas con los valoresde la variable de entorno evitando el escribir todos estos signos % para obtener sus valores.:Ejemplos:ford_gt1000 dijo:: ¿Cuánto son 1200 euros?J:>SET /A euros=1200, ptas=euros*166386/1000 199663 multiplicamos esa cantidad por 2 al cubo (i.e., añadimos 3 ceros "binarios" a su derecha)J:>set /a ptas="ptas<<3" <-- las comillas son necesarias por la 1597304 ambigüedad del operador < y si necesitamos lanzar un dado ...J:>set /a %random% % 6 + 1 4 Podemos utilizar números hexadecimalesJ:>SET /A ff=0xF0CA + 0xFEA 65716:Algunas variables de entornoPATH: Directorios donde buscar comandosQuizás la variable de entorno más importante sea PATH, que contiene una lista de directorios separados por ; donde la shell buscará las órdenes que nosotros introduzcamos desde línea de comandos (si no los encuentra en el directorio actual).Esta variable es tan importante que tiene su comando propio:ford_gt1000 dijo:ATH [ [directorio[;...]] [;%PATH%];] Muestra o fija una ruta de búsqueda para archivos ejecutables. Al incluir %PATH% en la nueva ruta de acceso hará que la ruta de acceso anterior se anexe a la nueva configuración.PATH ; borra la variable pathPATH sin parámetros muestra la ruta de acceso actual.:Ejecutando el comando path obtenemos esa lista de directorios:ford_gt1000 dijo::X:pruebas>pathPATH=C:WINNTsystem32;C:WINNT;C:WINNTSystem32Wbem;C:WINNTsys32;C:Archivos de programaJavajdk1.5.0_04bin;C:Archivos de programaArchivos comunesGTK2.0bin:Por ejemplo, si en el directorio "C:progbin" guardamos archivos ejecutables a los que deseamos llamar sin necesidad de escribir toda la ruta hasta ellos, podemos añadir ese directorio a la variable PATH:ford_gt1000 dijo::C:>path %PATH%;C:progbin:A partir de ahora podremos ejecutar cualquier programa que se encuentre en ese directorio sin tener que especificar la ruta completa.Si deseamos cambiar la path para todas las shell que abramos, debemos recurrir a las variables de entorno en Windows. En este caso, también podremos ejecutar los programas desde Windows con botón Inicio > Ejecutar....ERRORLEVEL Almacena información sobre el resultado de la ejecución del último comando (0 si tuvo una respuesta exitosa, distinto de 0 en otro caso). - mas información-PROMPT Define el símbolo del sistema. -más información-DIRCMD Permite establecer parámetros por defecto para el comando DIRp.ej. Si queremos que los listados de directorio aparezcan en minúsculas, y ordenados alfabéticamente: Z:>SET DIRCMD=/L/ONCOMPSPEC Ruta completa de la shell de comandosford_gt1000 dijo::Cocuments and SettingsAdministrador>set comspecComSpec=C:WINNTsystem32cmd.exe:[ Variables de entorno en W2003 Server ]ford_gt1000 dijo::Locales o de Usuario%ALLUSERSPROFILE% ubicación de perfil Todos los usuarios. %APPDATA% ubicación en que las aplicaciones guardan los datos de forma predeterminada. %CD% directorio actual. %CMDCMDLINE% línea de comandos exacta utilizada para iniciar el Cmd.exe actual. %LOGONSERVER% nombre del controlador de dominio que validó la sesión actual. %PROMPT% configuración del símbolo del sistema del intérprete actual.%TEMP% y %TMP% directorios temporales predeterminados que utilizan las aplicaciones. Algunas aplicaciones requieren TEMP y otras TMP.%USERDOMAIN% nombre del dominio que contiene la cuenta de usuario. %USERNAME% nombre del usuario que ha iniciado la sesión actual. %USERPROFILE% ubicación del perfil del usuario actual.Sistema%CMDEXTVERSION% número de versión de Extensiones del procesador de comandos actual. %COMPUTERNAME% nombre del equipo. %COMSPEC% ruta de acceso al ejecutable del shell de comandos. %DATE% fecha actual. Utiliza el mismo formato que el comando date /t.%ERRORLEVEL% código de error del último comando utilizado. Usualmente, los valores distintos de cero indican que se ha producido un error.%HOMEDRIVE% letra de unidad de la estación de trabajo local del usuario conectada al directorio particular del usuario. Se establece según el valor del directorio particular. El directorio particular del usuario se especifica en Usuarios y grupos Locales.%HOMEPATH% ruta de acceso completa del directorio particular del usuario. Se establece según el valor del directorio particular. El directorio particular del usuario se especifica en Usuarios y grupos Locales. %HOMESHARE% Devuelve la ruta de acceso de red del directorio particular compartido del usuario. Se establece según el valor del directorio particular. El directorio particular del usuario se especifica en Usuarios y grupos Locales.%NUMBER_OF_PROCESSORS% número de procesadores instalados en el equipo. %OS% nombre del sistema operativo.%PATH% ruta de acceso de búsqueda para los archivos ejecutables. %PATHEXT% extensiones de archivo que el sistema operativo considera como ejecutables. %PROCESSOR_ARCHITECTURE% Devuelve la arquitectura de chip del procesador. Valores: x86 o IA64 (basado en Itanium). %PROCESSOR_IDENTFIER% Devuelve una descripción del procesador. %PROCESSOR_LEVEL% Devuelve el número de modelo del procesador instalados en el equipo.%PROCESSOR_REVISION% Devuelve el número de revisión del procesador.%RANDOM% número decimal aleatorio entre 0 y 32767.%SYSTEMDRIVE% unidad que contiene el directorio raíz del Sistema Operativo (es decir, la raíz del sistema). %SYSTEMROOT% ubicación del directorio raíz del Sistema Operativo.%TEMP% y %TMP% directorios temporales predeterminados que utilizan las aplicaciones. Algunas aplicaciones requieren TEMP y otras TMP.%TIME% hora actual. Utiliza el mismo formato que el comando time /t.%WINDIR% Devuelve la ubicación del directorio del sistema operativo.:C:> ECHO %date% mar 04/02/2003C:> CMD /E:off -- arrancamos una nueva shell con las extensiones de comando deshabilitadasC:> ECHO %date% %date%
Datos archivados del Taringa! original
0puntos
0visitas
0comentarios
Actividad nueva en Posteamelo
0puntos
0visitas
0comentarios
Dar puntos:

Posts Relacionados

Dejá tu comentario

0/2000

No hay comentarios nuevos todavía

Autor del Post

f
ford_gt1000🇦🇷
Usuario
Puntos0
Posts17
Ver perfil →
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.