Tratamiento de shell de la línea de comandos en el sistema operativo UNIX
El shell Unix actúa como un intérprete entre el usuario y el sistema operativo. Toma comandos ingresados por el usuario en la línea de comandos, los procesa y los ejecuta. Aquí hay un desglose de cómo el shell maneja las líneas de comando:
1. Analizando la línea de comando:
* El shell primero lee la línea de comando que escribe.
* Entonces se divide la línea en palabras individuales, separadas por espacios o pestañas. Estas palabras se llaman tokens .
* Cada token es entonces interpretado Basado en su significado:
* comandos: Estas son las acciones principales que desea realizar, como `LS`,` Cat`, `Mkdir`, etc.
* Argumentos: Estos proporcionan información adicional para el comando, como los nombres de archivo para 'LS` o nombres de directorio para' Mkdir`.
* Opciones: Estas son banderas que modifican el comportamiento del comando, generalmente denotado por un guión seguido de una letra, por ejemplo, `-l` para un listado largo en` ls`.
2. Expandiendo caracteres especiales:
* El shell realiza expansión En la línea de comando, reemplazando ciertos caracteres con sus valores correspondientes:
* expansión de tilde: `~` se expande al directorio de inicio del usuario.
* Expansión variable: `$ Var` se expande al valor de la variable` var`.
* Expansión de aparato ortopédico: `{a, b}` se expande a `a` y` b`.
* Expansión comodín: `*` coincide con cualquier cadena, `?` coincide con cualquier personaje único y `[]` coincide con cualquier carácter dentro de los soportes.
3. Buscando el comando:
* El shell busca el comando que ingresó en una ruta predefinida . Esta ruta contiene directorios donde se encuentran ejecutables.
* Si se encuentra el comando, el shell inicia el programa ejecutable correspondiente.
4. Ejecutando el comando:
* El shell configura el entorno para el comando transmitiendo los argumentos, opciones y otra información relevante.
* El comando entonces se ejecuta y realiza la acción solicitada.
* Después de que finalice el comando, el shell muestra cualquier salida generada y le solicita un nuevo comando.
5. Manejo de errores:
* Si el shell encuentra un error, como un comando no encontrado o argumentos no válidos, mostrará un mensaje de error .
* A menudo puede usar códigos de error y señales para manejar errores en scripts y programas.
Ejemplo:
`` `` ``
$ LS -L/Home/User/Documents
`` `` ``
Aquí, `ls` es el comando,` -l` es una opción, y `/home/user/documents` es un argumento.
Resumen:
La Shell Unix juega un papel crucial en la facilitación de la interacción con el sistema operativo. Interpreta la entrada del usuario, expande caracteres especiales, busca comandos y los ejecuta, proporcionando una interfaz potente y flexible para administrar e interactuar con el sistema.