LINUX

Cómo agregar un directorio a la variable $ PATH en Linux

Las variables de entorno controlan el comportamiento del shell. Las variables de entorno son las variables que establecen el entorno de trabajo del shell. Algunas de las variables de entorno son USER, HOME, SHELL, PWD, SHELL, PS1, PS2, etc.

La variable HOME contiene la ruta del directorio de inicio del usuario. De manera similar, las otras variables contienen otros valores necesarios para el funcionamiento del shell. Este tutorial analiza una importante variable de entorno de shell llamada PATH y cómo puede agregar valores a esta variable.

En este tutorial, le mostraré cómo agregar un directorio a su variable PATH en Linux. La variable $ PATH muestra una lista de todos los directorios donde residen los comandos de Linux o los archivos ejecutables.

Mostrar valor de variable

El shell interpreta el valor de una variable mediante el signo «$». Para mostrar el valor de una variable, preceda la variable con el signo «$». El comando «echo» se utiliza para mostrar el valor de la variable. Visualicemos el valor de la variable HOME:

$ echo $HOME
/home/raghu

¿Qué es la variable PATH?

Los comandos en Unix / Linux son los archivos ejecutables binarios. Cuando ingresa un comando en el indicador de shell, se ejecuta el archivo binario con ese nombre. Entonces, cuando se ingresa un comando en el indicador, el shell busca ese archivo binario en algunos directorios. Estos directorios se enumeran en la variable PATH. Sin la variable PATH, no se puede ejecutar ningún comando.

Ahora mostremos el valor actual de la variable PATH.

$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

Los directorios de esta variable están separados por: (dos puntos). En la actualidad, el shell busca en los siguientes directorios los archivos ejecutables binarios:

• /usr/local/sbin
• /usr/local/bin
• /usr/sbin
• /usr/bin
• /sbin and
• /bin

El orden de la ruta de búsqueda también es importante. Supongamos que ingresa el comando ls en la línea de comandos. Ahora, al principio, el shell busca en el directorio / usr / local / sbin. Si no encuentra un archivo ejecutable con ese nombre en este directorio, busca en el directorio / usr / local / bin y luego en / usr / sbin, seguido de / usr / bin y así sucesivamente. Si ninguno de los directorios especificados en la variable PATH contiene ese archivo, se muestra el error «comando no encontrado» en la terminal.

Qué comando se usa para encontrar el directorio que contiene un comando en particular. Este comando también usa la variable PATH para buscar la ubicación del comando. Por ejemplo,

$ which ls
/bin/ls

Significa que cuando escribe ls en el indicador y ejecuta el comando ls, se ejecuta el archivo “/ bin / ls”. En otras palabras, la ubicación del comando ls es “/ bin / ls”. También puede encontrar la ruta de otros comandos con el comando «which».

Agregar directorios a PATH

Ahora suponga que crea sus scripts de shell en el directorio bin ubicado en su directorio de inicio, es decir, en el directorio “~ / bin” (~ representa el directorio de inicio); y ahora también desea agregar este directorio a su variable PATH, de modo que no tenga que especificar la ruta a su script cada vez que lo ejecute.

El valor de una variable se cambia con la sintaxis “variable = valor”. Pero aquí, queremos agregar un directorio a la variable PATH. No podemos simplemente escribir “PATH = ~ / bin” porque sobrescribirá todos los valores anteriores. Queremos preservar los valores existentes contenidos en la variable. Entonces, usamos el valor de la variable, es decir, $ PATH, para asignar un nuevo valor. Si suena confuso, no se preocupe, se aclarará con el siguiente comando:

$ export PATH=$PATH:~/bin
$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/root/bin

El directorio «/ root / bin» (/ root es el directorio de inicio del usuario root) se ha agregado a la variable de ruta. Ahora puede ejecutar su secuencia de comandos como un comando, sin especificar la ruta completa a la secuencia de comandos. El comando de exportación asegura que las variables se pasen a los procesos secundarios sin afectar las variables de entorno existentes.

Tomemos otro ejemplo en el que le gustaría agregar un directorio (/ home / tom / scripts) para un usuario llamado ‘tom’ que puede contener sus scripts o binarios. Puede colocar la ruta de la secuencia de comandos personalizada al principio de la RUTA si el sistema desea encontrarla primero.

$ export PATH=$HOME/scripts:$PATH

o

$ export PATH=$/home/tom/scripts:$PATH

Para eliminar una ruta de la variable $ PATH de la sesión actual, no existe un comando sencillo. Simplemente obtenga los valores actuales de la variable $ PATH usando «echo $ PATH» y expórtelos nuevamente después de eliminar las rutas no deseadas. O simplemente inicie un nuevo shell.

Cómo configurar PATH permanente

Para configurar la variable $ PATH de forma permanente, debe agregar el comando mencionado anteriormente al archivo de configuración respectivo que inicia el shell. El archivo más común es ~ / .bashrc si está utilizando Bash. Para zsh, agréguelo al archivo ~ / .zshrc.

Puede utilizar adecuadamente / etc / environment y / etc / profile, que define variables de entorno globales.

Abra el archivo ~ / .bashrc en su editor de texto favorito y ejecute el siguiente comando:

~ / .bashrc

export PATH=$/home/tom/scripts:$PATH

Y, para cargar la variable en el comando de fuente de ejecución del shell actual, escriba:

$ source ~/.bashrc

Conclusión

En este tutorial, hemos aprendido cómo agregar un directorio a la variable de entorno PATH en Linux. Espero que haya disfrutado leyendo esto y deje su sugerencia en la sección de comentarios a continuación.

Lectura relacionada:

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba
Cerrar