cmd.exe es el intérprete de línea de comandos predeterminado para los sistemas operativos OS / 2 , [1] eComStation , ArcaOS , Microsoft Windows ( familia Windows NT y Windows CE ) y ReactOS [2] . El nombre se refiere a su nombre de archivo ejecutable. También se conoce comúnmente como cmd o el símbolo del sistema , en referencia al título de la ventana predeterminada en Windows. Las implementaciones difieren en los diversos sistemas, pero el comportamiento y el conjunto básico de comandos son generalmente consistentes. cmd.exe es la contraparte de COMMAND.COMen sistemas DOS y Windows 9x , y de forma análoga a los shells de Unix utilizados en sistemas similares a Unix. Therese Stowell desarrolló la versión inicial de cmd.exe para Windows NT . [3] Windows CE 2.11 fue la primera versión de Windows incrustada que admitió una consola y una versión de Windows CE de cmd.exe . [4] En Windows CE .NET 4.2 , [5] Windows CE 5.0 [6] y Windows Embedded CE 6.0 [7] también se lo conoce como Command Processor Shell . La implementación de ReactOS de cmd.exe se deriva de FreeCOM, el intérprete de línea de comandos de FreeDOS . [2]
Otros nombres | Procesador de comandos de Windows |
---|---|
Desarrollador (es) | Colaboradores de Microsoft , IBM , ReactOS |
Versión inicial | Diciembre de 1987 |
Sistema operativo |
|
Plataforma | IA-32 , x86-64 , ARM (e históricamente DEC Alpha , MIPS , PowerPC e Itanium ) |
Predecesor | COMMAND.COM |
Tipo | Intérprete de línea de comandos |
Operación
cmd.exe interactúa con el usuario a través de una interfaz de línea de comandos . En Windows, esta interfaz se implementa a través de la consola Win32 . cmd.exe puede aprovechar las funciones disponibles para los programas nativos de su propia plataforma. Por ejemplo, en OS / 2 y Windows, puede utilizar conductos reales en conductos de comandos, lo que permite que ambos lados del conducto se ejecuten simultáneamente. Como resultado, es posible redirigir el flujo de errores estándar . ( COMMAND.COM utiliza archivos temporales y ejecuta los dos lados en serie, uno tras otro.)
Se pueden procesar varios comandos en una sola línea de comandos utilizando el separador de comandos && . [8] Por ejemplo:
C : \ > ComandoA && ComandoB && ComandoC
En Windows XP o posterior, la longitud máxima de la cadena que se puede utilizar en el símbolo del sistema es de 8191 caracteres. En versiones anteriores, como Windows 2000 o Windows NT 4.0 , la longitud máxima de la cadena es de 2047 caracteres. Este límite incluye la línea de comandos, las variables de entorno individuales heredadas por otros procesos y todas las expansiones de variables de entorno. [9]
Se requieren comillas para los siguientes caracteres especiales : [8]
& <> [] {} ^ =; ! '+, `~ [espacio en blanco]
Comandos internos
OS / 2
La siguiente es una lista de los archivos internos de Microsoft OS / 2. Comandos cmd.exe : [10]
- rotura
- chcp
- CD
- chdir
- cls
- Copiar
- fecha
- del
- despegar
- dir
- dpath
- eco
- borrar
- Salida
- por
- ir
- Si
- Maryland
- mkdir
- camino
- pausa
- inmediato
- rd
- movimiento rápido del ojo
- ren
- rebautizar
- rmdir
- colocar
- cambiar
- comienzo
- hora
- tipo
- ver
- verificar
- vol
Familia de Windows NT
La siguiente lista de comandos internos es compatible con cmd.exe en Windows NT y posterior: [11]
- assoc
- rotura
- llamada
- CD
- chdir
- cls
- color
- Copiar
- fecha
- del
- dir
- dpath
- eco
- endlocal
- borrar
- Salida
- por
- ftype
- ir
- Si
- llaves
- Maryland
- mkdir
- mklink (introducido en Windows Vista)
- moverse
- camino
- pausa
- popd
- inmediato
- empujado
- rd
- movimiento rápido del ojo
- ren
- rebautizar
- rmdir
- colocar
- setlocal
- cambiar
- comienzo
- hora
- título
- tipo
- ver
- verificar
- vol
Windows CE
La siguiente lista de comandos es compatible con cmd.exe en Windows CE .NET 4.2, [12] Windows CE 5.0 [13] y Windows Embedded CE 6.0: [14]
- attrib
- llamada
- CD
- chdir
- cls
- Copiar
- fecha
- del
- dir
- eco
- borrar
- Salida
- ir
- ayuda
- Si
- Maryland
- mkdir
- moverse
- camino
- pausa
- inmediato
- pwd
- rd
- movimiento rápido del ojo
- ren
- rebautizar
- rmdir
- colocar
- cambiar
- comienzo
- hora
- título
- tipo
además, el net comando está disponible como un comando externo almacenado en \ Windows \ net.exe .
ReactOS
La implementación de ReactOS incluye los siguientes comandos internos: [2]
- ?
- alias
- assoc
- bip
- llamada
- CD
- chdir
- elección
- cls
- color
- Copiar
- ctty
- fecha
- del
- Eliminar
- demora
- dir
- dirs
- eco
- ecos
- echoerr
- echoserr
- endlocal
- borrar
- Salida
- por
- libre
- ir
- historia
- Si
- memoria
- Maryland
- mkdir
- mklink
- moverse
- camino
- pausa
- popd
- inmediato
- empujado
- rd
- rmdir
- movimiento rápido del ojo
- ren
- rebautizar
- reemplazar
- pantalla
- colocar
- setlocal
- cambiar
- comienzo
- hora
- Temporizador
- título
- tipo
- ver
- verificar
- vol
Comparación con COMMAND.COM
En Windows, cmd.exe es principalmente compatible con COMMAND.COM pero proporciona las siguientes extensiones sobre él:
- Mensajes de error más detallados que el " Comando incorrecto o nombre de archivo " (en el caso de comandos mal formados) de COMMAND.COM . En OS / 2, los errores se informan en el idioma elegido del sistema, y su texto se toma de los archivos de mensajes del sistema. La A continuación, se puede emitir el comando HELP con el número del mensaje de error para obtener más información.
- Admite el uso de las teclas de flecha para desplazarse por el historial de comandos. (En DOS, esta función solo estaba disponible en DR DOS (a través de HISTORIA ) y más tarde a través de un componente externo llamado DOSKEY .)
- Agrega finalización de línea de comandos para rutas de archivos y carpetas.
- Trata el carácter de intercalación ( ^ ) como carácter de escape ; el carácter que le sigue debe tomarse literalmente. Hay caracteres especiales en cmd.exe y COMMAND.COM (por ejemplo, " < "," > "y" | ") que pretenden alterar el comportamiento del procesador de línea de comando. El carácter de intercalación obliga al procesador de línea de comando a interpretarlos literalmente.
- Admite la expansión de variables retardada con
SETLOCAL EnableDelayedExpansion
, permitiendo que los valores de las variables se calculen en tiempo de ejecución en lugar de durante el análisis del script antes de la ejecución (Windows 2000 y posteriores), corrigiendo los modismos de DOS que hacían que el uso de estructuras de control fuera difícil y complejo. [15] Las extensiones se pueden desactivar, proporcionando un modo de compatibilidad más estricto.
También se han mejorado los comandos internos:
- La El comando DELTREE se fusionó con el Comando RD , como parte de su / S interruptor .
- SetLocal y Los comandos EndLocal limitan el alcance de los cambios en el entorno. Cambios realizados en el entorno de la línea de comandos después Los comandos SetLocal son locales para el archivo por lotes . El comando EndLocal restaura la configuración anterior. [dieciséis]
- La El comando de llamada permite subrutinas dentro del archivo por lotes. La Llamar al comando en COMMAND.COM solo admite llamadas a archivos por lotes externos.
- Extensiones del analizador de nombre de archivo al Conjunto de comandos son comparables con C shell . [ se necesita más explicación ]
- La El comando Set puede realizar la evaluación de expresiones .
- Una expansión del El comando For admite el análisis de archivos y conjuntos arbitrarios además de los nombres de los archivos.
- El nuevo PushD y Los comandos PopD brindan acceso a rutas anteriores de navegación similar a los botones "avanzar" y "retroceder" en un navegador web o Explorador de archivos .
- El condicional El comando IF puede realizar comparaciones que no distinguen entre mayúsculas y minúsculas y comparaciones numéricas de igualdad y desigualdad, además de comparaciones de cadenas que distinguen entre mayúsculas y minúsculas. (Esto estaba disponible en DR-DOS, pero no en PC DOS o MS-DOS ).
Ver también
- Comparación de proyectiles de comando
- Lista de comandos de DOS
- Potencia Shell
- Terminal de Windows
Referencias
- ^ "Notas sobre el uso del procesador de comandos OS / 2 predeterminado (CMD.EXE)" . www.tavi.co.uk .
- ^ a b c "reactos / reactos" . GitHub .
- ^ Zachary, G. Pascal (1994). ¡Espectáculo! La carrera vertiginosa para crear Windows NT y la próxima generación en Microsoft . La prensa libre . ISBN 0-02-935671-7.
- ^ Douglas McConnaughey Boling (2001). Programación Microsoft Windows CE (2ª ed.). Microsoft Press . ISBN 978-0735614437.
- ^ "Shell del procesador de comandos (Windows CE .NET 4.2)" . docs.microsoft.com .
- ^ "Shell del procesador de comandos (Windows CE 5.0)" . docs.microsoft.com .
- ^ "Shell del procesador de comandos (Windows Embedded CE 6.0)" . docs.microsoft.com .
- ^ a b "cmd" . docs.microsoft.com .
- ^ Limitación de la cadena de línea de comandos del símbolo del sistema (Cmd. Exe)
- ^ Microsoft Operating System / 2 User's Reference (PDF) . Microsoft . 1987.
- ^ Hill, Tim (1998). Secuencias de comandos de Shell de Windows NT . Publicaciones técnicas de Macmillan . ISBN 978-1578700479.
- ^ "Comandos del procesador de comandos (Windows CE .NET 4.2)" . docs.microsoft.com .
- ^ "Comandos del procesador de comandos (Windows CE 5.0)" . docs.microsoft.com .
- ^ "Comandos del procesador de comandos (Windows Embedded CE 6.0)" . docs.microsoft.com .
- ^ "Windows 2000 retrasó la expansión de la variable de entorno" . Windows IT Pro . Archivado desde el original el 13 de julio de 2015 . Consultado el 13 de julio de 2015 .
- ^ "Setlocal" . TechNet . Microsoft . Consultado el 13 de enero de 2015 .
Otras lecturas
- David Moskowitz; David Kerr (1994). OS / 2 2.11 Unleashed (2ª ed.). Sams Publishing . ISBN 978-0672304453.
- Stanek, William R. (2008). Consultor de bolsillo del administrador de la línea de comandos de Windows (2ª ed.). Microsoft Press . ISBN 978-0735622623.
enlaces externos
- "Referencia de línea de comandos AZ" . Microsoft .
- "Cmd" . Documentación del producto Microsoft Windows XP . Microsoft . Archivado desde el original el 2 de septiembre de 2011 . Consultado el 24 de mayo de 2006 .
- "Símbolo del sistema: preguntas frecuentes" . Ayuda de Windows . Microsoft . Archivado desde el original el 22 de abril de 2015 . Consultado el 20 de abril de 2015 .
- "Un índice A – Z de la línea de comandos de Windows CMD" . SS64.com.