Cómo enumerar las variables de entorno en Linux


fatmawati achmad zaenuri/Shutterstock.com

Para enumerar todas las variables de entorno en una computadora con Linux, use el comando printenv. Póngalo en el comando less para obtener resultados de búsqueda, o use grep para imprimir variables específicas.

En Linux, las variables de entorno contienen valores y configuraciones importantes. Los scripts, las aplicaciones y los shells leen estos valores, a menudo para configurarse ellos mismos o para controlar su comportamiento. Aquí hay varias formas de mostrar esas variables en su terminal.

Todo sobre las variables de entorno

Nuestras diversas computadoras de prueba tienen un promedio de 50 variables de entorno en cada una de ellas. Una variable de entorno, como cualquier otra variable, es una combinación de un nombre y un valor. los nombre es único, se establece cuando se crea la variable y dura el tiempo de vida de la variable de entorno.

Las variables se mantienen valores para nosotros. Cuando un proceso necesita saber cuál es el valor, busca la variable por nombre y lee el valor de ella. Aunque los nombres de las variables no se pueden cambiar, sí se pueden cambiar sus valores.

No cambiará a menudo las variables de entorno del sistema, pero puede hacerlo si lo necesita. Por ejemplo, es posible que desee aumentar el tamaño de la memoria caché del historial de comandos de shell de Bash. Puede editar el valor de la $HISTSIZE variable de entorno en su archivo «.bashrc» para establecer un nuevo límite superior para la cantidad de comandos recordados.

Eso es limpio y conveniente, pero no es algo que vayas a hacer con frecuencia. Las variables de entorno tienden a dejarse en sus valores predeterminados o se cambian una vez y luego se olvidan. No son algo con lo que jugarás a menudo.

No obstante, vale la pena saber cómo mostrar las variables de entorno que están definidas y en uso en su computadora. Imprimir las variables de entorno en una ventana de terminal le permite verificar sus valores y le muestra qué aspectos de su experiencia con Linux se rigen por estos valores de fondo.

RELACIONADO: Cómo establecer variables de entorno en Bash en Linux

Comandos para imprimir variables de entorno

Puedes usar echo para ver el valor almacenado en una variable de entorno. Para hacer eso, necesitará saber el nombre de la variable de entorno de antemano.

echo $HOME
echo $USER

Usando echo para ver los valores almacenados en variables de entorno

Hay dos métodos comúnmente utilizados para mostrar los nombres y valores de todas las variables de entorno en Linux. Ellos son las env y el printenv comandos

los printenv comando es la forma oficial de hacerlo. El comando fue escrito específicamente para este propósito. los env El comando tiene un propósito completamente diferente.

env se utiliza para ejecutar una aplicación con valores temporales especificados por el usuario para las variables de entorno. Estos anulan los valores reales almacenados y permiten que la aplicación se ejecute en un entorno modificado. si invocas env sin parámetros de línea de comandos, su acción predeterminada es enumerar las variables de entorno.

También podemos usar la herramienta diseñada para el trabajo, en lugar de depender del efecto secundario de una herramienta que se ha invocado incorrectamente, por lo que usaremos printenv en nuestros ejemplos.

RELACIONADO: Cómo pasar variables de entorno a contenedores Docker

Uso de printenv para ver variables de entorno

los printenv El comando es muy sencillo. Tiene muy pocas opciones. Puedes usar el --version opción para averiguar el número de lanzamiento de la versión en su computadora, y puede usar el --help comando para ver una breve descripción de estos dos y otra opción de línea de comando.

La otra opción es la -0 (terminador nulo) opción. Normalmente, printenv enumera las variables de entorno una por línea, agregando un carácter de nueva línea al final de cada línea. los -0 La opción reemplaza ese carácter de nueva línea con un byte nulo. Usaría esta opción si estuviera canalizando la salida a otra aplicación que no necesitara los caracteres de nueva línea.

printenv -0

Usando printenv con la opción -0

El efecto de la -0 La opción en una ventana de terminal es meter la salida en una pared impenetrable de texto.

La salida ilegible de printenv cuando se usa la opción -0

Es prácticamente imposible entenderlo. Será una ocurrencia rara si alguna vez necesita usar el -0 opción. Dejémoslo y volvamos a intentarlo.

printenv

Usando el comando printenv sin opciones

La salida se imprime con una variable de entorno por línea. Por convención, los nombres de las variables de entorno siempre usan caracteres en mayúsculas. Inmediatamente después del nombre de la variable hay un signo igual «=“, seguido del valor en el que está configurada la variable de entorno.

La salida estándar de printenv, con una variable ambiental por línea.

Todavía hay una gran cantidad de salida, por lo que puede resultarle más fácil canalizar la salida en less .

printenv | less

Canalización de printenv en el visor de archivos menos

Esto le permite desplazarse por la lista y buscar en la lista también.

La salida de printenv en el visor de archivos menos

Si sabe algo sobre la variable de entorno que le interesa, puede usar grep para encontrar a los posibles candidatos. Suponga que sabe que hay una variable de entorno que tiene la palabra «mostrar». Podemos buscar en la lista así:

printenv | grep DISPLAY

Usando grep para filtrar los resultados de printenv

RELACIONADO: Cómo trabajar con variables en Bash

Algunas variables de entorno comunes

Las variables de entorno predeterminadas en diferentes computadoras Linux están sujetas a las preferencias de los mantenedores de las diversas distribuciones, entornos de escritorio y shells.

Estas son algunas de las variables de entorno más comunes que probablemente encontrará en una computadora Linux que utiliza el entorno de escritorio GNOME.

  • BASTIDORES: La lista de opciones de la línea de comandos que se usaron cuando se lanzó bash.
  • BASH_VERSION: La versión de bash.
  • COLUMNAS: El ancho de la terminal en columnas.
  • DIRSTACK: La pila de directorios para usar con el pushd y popd comandos
  • TAMAÑOARCHIVOHIST: El número máximo de líneas de historial de comandos que se pueden escribir en el archivo de historial.
  • TAMAÑO HISTORICO: El número máximo de líneas de historial de comandos que se pueden almacenar en la memoria. Si supera este número, los comandos recordados anteriormente se sobrescriben en la memoria. Cuando cierra la ventana de su terminal, el historial de comandos se escribe en el archivo de historial.
  • HOGAR: el directorio de inicio del usuario actual.
  • NOMBRE DE HOST: El nombre de la computadora.
  • IFS: El separador de campo interno que se utiliza para analizar la entrada del usuario. El valor predeterminado es un espacio.
  • IDIOMA: la configuración actual de idioma y localización, incluida la codificación de caracteres.
  • LS_COLORS: Esto define los códigos que se utilizan para agregar color a la salida de ls.
  • CORREO: La ruta al buzón de Linux del usuario actual.
  • OLDPWD: El directorio de trabajo anterior.
  • ps1: La definición principal del símbolo del sistema. Esto define cómo se ve el indicador en la ventana de su terminal.
  • SENDERO: Una lista separada por dos puntos de directorios que se buscan, en orden, para un comando o aplicación coincidente cuando escribe un comando en el shell.
  • PCD: El directorio de trabajo actual.
  • CAPARAZÓN: El nombre de su shell predeterminado.
  • TÉRMINO: El tipo de terminal que se emula cuando ejecuta un shell.
  • UID: El identificador de usuario del usuario actual.
  • USUARIO: El usuario actual.
  • _: El comando ejecutado más recientemente. Si utiliza printenv para enumerar esto, siempre será printenv.

Inspecciones Ambientales

Para ver todas sus variables de entorno, use printenv. Tubería la salida a través grep para filtrar los resultados y utilizar echo para imprimir el valor de una variable de entorno conocida y específica.





Source link-39