¿Qué son los comandos internos y externos?
* Comandos internos están integrados en el caparazón (como Bash o Zsh). No son programas separados y se ejecutan directamente dentro del proceso de shell. Ejemplos:`CD`,` ECHO`, `EXIT`.
* Comandos externos Se almacenan programas separados en el sistema de archivos (generalmente en directorios como /bin, /usr /bin, etc.). El shell necesita localizar y ejecutar estos archivos. Ejemplos:`LS`,` Cat`, `Grep`.
Por qué no puedes decir solo mirando:
1. Sin distinción visual: Los shells no se diferencian visualmente entre comandos internos y externos en el mensaje. Ambos se ven igual cuando los escribes.
2. Alias y enmascaramiento de funciones: Puede crear alias o funciones que enmascaran los comandos externos con el mismo nombre. Por ejemplo, podría tener un alias llamado `ls` que ejecuta` ls -lrt`.
Cómo averiguar si un comando es interno o externo:
1. `type` comando: El método más confiable es usar el comando `type`. Le dice el tipo de comando y su ubicación si es externo.
`` `Bash
tipo CD
tipo LS
`` `` ``
2. `Help` Command (para algunos shells): En algunos proyectiles (como Bash), puede usar el comando 'Ayuda'. Si es un comando interno, le mostrará su uso. Si no, generalmente significa que es externo.
`` `Bash
Ayuda de CD
Ayuda LS
`` `` ``
3. `cuyo` comando (para comandos externos): El comando `que 'lo ayuda a localizar el archivo ejecutable de un comando * externo *. Si no lo encuentra, podría ser un comando interno o no existir.
`` `Bash
Que LS
`` `` ``
En resumen, no confíe en las señales visuales. Use los comandos apropiados para determinar si un comando es interno o externo.