Comandos internos:
* Residencia: Estos comandos están construidos directamente en el intérprete de comando (por ejemplo, `cmd.exe`). Residen en la memoria mientras el intérprete de comando se está ejecutando.
* Ejecución: El intérprete los ejecutan directamente sin necesidad de cargar un programa separado del disco. Esto los hace mucho más rápido.
* Ejemplos: Los comandos internos comunes incluyen `dir`,` copy`, `del`,` mkdir`, `rmdir`,` cd`, `cls`,` help`, `exit`,` type`, `date`,` time`.
Comandos externos:
* Residencia: Estos comandos son programas ejecutables separados (`.exe`,` .Com`, `.bat` o` .cmd` archivos) almacenados en su disco duro.
* Ejecución: El intérprete de comando carga y ejecuta estos programas desde el disco cuando escribe su nombre. Esto es más lento que ejecutar comandos internos.
* Ejemplos: `Format`,` chkdsk`, `ping`,` ipconfig`, `tracert`,` netstat`. La mayoría de los comandos que interactúan con el hardware del sistema o las redes entran en esta categoría. Incluso algunos comandos aparentemente simples pueden ser externos, dependiendo de su versión o configuración de DOS.
Diferencias clave resumidas:
| Característica | Comandos internos | Comandos externos |
| ---------------- | -------------------------------------- | ------------------------------------------- |
| Ubicación | Parte del intérprete de comando | Separan archivos ejecutables en el disco |
| Carga | Ya cargado en la memoria | Cargado desde el disco en la ejecución |
| Velocidad | Ejecución más rápida | Ejecución más lenta |
| Disponibilidad | Siempre disponible mientras el intérprete funciona | Solo disponible si el archivo existe |
Cómo distinguir la diferencia:
Si bien no hay un comando único para clasificar definitivamente un comando como interno o externo, puede probar esto:
1. Intenta ejecutarlo: Si el comando funciona, es interno o externo (la distinción crucial es la velocidad). Los comandos internos se ejecutarán notablemente más rápido.
2. Compruebe el comando `wher` (si está disponible; versiones más nuevas de CMD): El comando `wher` (disponible en los avisos del sistema de Windows más nuevos) mostrará la ubicación de un ejecutable. Si `Where CommandName` devuelve una ruta a un archivo, es externo. Si dice "dónde no se reconoce ...", y el comando es un comando interno válido, entonces es interno. Si no existe, es solo un error simple.
En resumen, los comandos internos son utilidades esenciales e incorporadas, mientras que los comandos externos proporcionan funcionalidad extendida, que a menudo requieren más recursos.