Las variables de shell son importantes para el buen funcionamiento de cualquier sistema Linux. Por ejemplo, cada vez que ejecuta un programa o comando, su sistema busca en la variable PATH para verificar si el programa está presente. El conocimiento de las variables de shell es importante para el uso diario o la administración de los sistemas Linux.
La importancia de las variables de shell
Una variable de shell es un marcador de posición para almacenar información utilizada por su sistema Linux, programas o scripts.
Hay diferentes tipos de shells o intérpretes de línea de comandos en Linux, todos los cuales utilizan variables de forma extensiva. Algunas de las funciones importantes que desempeñan las variables de shell incluyen:
- Las variables de shell le permiten almacenar y manipular valores en el shell y pueden manipular resultados en cálculos u otras operaciones.
- Proporcionan una forma de pasar valores entre scripts y programas.
- Puede usar variables de shell para personalizar el comportamiento de los programas
Las variables de shell son muy flexibles; también puede crear sus propias variables personalizadas, pero estas son algunas de las variables predeterminadas que vienen con su sistema.
1. CAMINO
La variable PATH especifica los directorios donde el sistema debe buscar archivos ejecutables cuando ingresa un comando en la terminal.
Es una variable de entorno de todo el sistema y consta de una lista de directorios separados por dos puntos. Cada directorio se busca a su vez en busca de un archivo ejecutable con el mismo nombre que el comando que ingresó.
Por ejemplo, si ingresa el comando ls en la terminal, el sistema buscará en los directorios especificados en la variable PATH el comando denominado ls. Si encuentra el archivo, lo ejecutará; si no, mostrará el mensaje de error "comando no encontrado".
La variable PATH es importante porque le permite ejecutar comandos desde cualquier directorio sin tener que especificar la ruta completa al archivo ejecutable. Por ejemplo, si tiene el archivo ejecutable "ls" en el /usr/bin directorio, puede ejecutar el comando ls desde cualquier directorio simplemente escribiendo ls, en lugar de especificar la ruta completa, es decir, /usr/bin/ls.
Puede ver el valor actual de la variable PATH ejecutando el comando echo de la siguiente manera:
eco $RUTA
También puede modificar el valor de la variable PATH agregando o eliminando directorios de la lista. Esto puede ser útil si desea agregar un directorio que contenga sus propios ejecutables o scripts personalizados, o si desea modificar los directorios que se buscan al ejecutar comandos.
2. HOGAR
En Linux, la variable HOME es una variable de entorno que especifica la ruta al directorio de inicio del usuario. ¿Por qué es esto tan importante? Bueno, Linux es un sistema operativo multiusuario y la carpeta de inicio es un directorio especial en su sistema asociado con cada usuario.
El directorio de inicio generalmente se usa para almacenar los archivos personales del usuario, como documentos, imágenes, música, etc.
La variable HOME generalmente se establece automáticamente cuando inicia sesión y muchos programas y scripts la utilizan para ubicar el directorio de inicio del usuario. Por ejemplo, cuando ejecuta el comando cd sin ningún argumento, utiliza la variable INICIO para navegar al directorio de inicio del usuario.
Muchos programas usan la variable HOME para almacenar archivos de configuración u otros datos en el directorio de inicio del usuario. Puede ver el valor actual de la variable HOME ejecutando el eco $ INICIO dominio.
3. USUARIO
La variable USER especifica el nombre de usuario del usuario actualmente conectado. Se establece automáticamente cuando inicia sesión y los programas y scripts lo utilizan comúnmente para determinar el nombre de usuario del usuario actual.
La variable USER se usa a menudo en scripts para personalizar el comportamiento de un programa en función del usuario actual. Por ejemplo, un script puede verificar el valor de la variable USER y solo realizar ciertas acciones si el usuario actual tiene privilegios de root o sudo.
También puede usar la variable para ejecutar ciertos comandos genéricos. Por ejemplo, al agregar su usuario al grupo docker, simplemente puede ejecutar el siguiente comando en lugar de escribir el nombre de usuario real:
sudo usermod -aG docker $USUARIO
4. CAPARAZÓN
Un shell es un programa que proporciona una interfaz de línea de comandos (CLI) para interactuar con el sistema operativo.
La mayoría de los sistemas Linux usan Bourne Again Shell (Bash) como predeterminado, pero hay muchas alternativas. La capa C (csh), la capa Z (Zsh), el pez, etc.
La variable SHELL especifica la ruta al shell predeterminado del usuario. Se configura automáticamente al iniciar sesión.
Además, la variable se usa en secuencias de comandos para personalizar el comportamiento de los programas según el shell predeterminado del usuario. Por ejemplo, una secuencia de comandos puede verificar el valor de la variable SHELL y usar una sintaxis u opciones diferentes según el shell que se use.
Puede ver el valor actual de la variable SHELL ejecutando el echo $SHELL. Tu puedes cambiar su shell predeterminado usando el comando chsh.
5. PCD
Otra variable de entorno importante en Linux, PWD almacena su directorio de trabajo actual. A diferencia de la mayoría de las variables de entorno que son en su mayoría estáticas, el shell actualiza esta cada vez que cambiar directorios usando el comando cd.
Puede usar la variable PWD en sus scripts de shell para consultar fácilmente el directorio de trabajo actual. El valor de la variable es similar al que obtiene cuando ejecuta el comando pwd.
6. NOMBRE DE HOST
Un nombre de host o nombre de dispositivo es un nombre único que se utiliza para identificar su computadora en una red. Por ejemplo, cuando desee acceder a una máquina mediante SSH, simplemente puede usar el nombre de host en lugar de la dirección IP.
La variable HOSTNAME es una variable de entorno que simplemente especifica el nombre de host del sistema. Se establece automáticamente cuando se inicia el sistema y normalmente se usa para identificar el sistema cuando está conectado a una red. Hay varias formas en las que Ud. puede cambiar el nombre de host en Linux.
Los programas y scripts también utilizan la variable HOSTNAME para identificar el sistema y personalizar su comportamiento en función del nombre de host. Una secuencia de comandos generalmente verificará el valor de la variable HOSTNAME y solo realizará ciertas acciones si el sistema es un host específico.
Creación de una variable personalizada en Linux
Además de las variables predeterminadas de Linux que se configuran automáticamente para usted. También puede definir sus propias variables de shell utilizando el comando de exportación. Para crear una nueva variable llamada SALUDO con el valor "Hola mundo", podría usar el siguiente comando:
exportar SALUDO="Hola Mundo"
Luego puede usar la variable SALUDO en sus scripts o dentro de la línea de comando como cualquier otra variable de entorno.