Cómo establecer variables de entorno en MacOS

6 dic 2022 2 min di lettura
Cómo establecer variables de entorno en MacOS
Indice dei contenuti

Introducción

Las variables de entorno son una forma de almacenar valores en la máquina local (la que ejecuta el programa). Por ejemplo, puede almacenar una identificación de usuario que se usaría para iniciar sesión en un sistema. También puede usar variables de entorno para almacenar opciones de configuración, como el nombre de una conexión de base de datos.

Al establecer variables de entorno, es importante tener en cuenta las implicaciones de seguridad. Si un atacante puede acceder a las variables de su entorno, podría obtener acceso a información confidencial, como el nombre de usuario y la contraseña. Por lo tanto, es importante proteger los nombres de las variables de entorno.

Aquellos que son nuevos en Mac pueden sentirse abrumados con la forma de configurar y administrar estas variables de entorno. Esta guía proporciona maneras fáciles de hacerlo.

Ver las variables de entorno actuales

Para ver todas las variables de entorno, abra una terminal en macOS y escriba:

printenv

También podemos usar el comando echo para imprimir los valores de variables de entorno específicas:

echo $JAVA_HOME
/usr/local/Cellar/openjdk@11/11.0.16.1/libexec/openjdk.jdk/Contents/Home

De forma predeterminada, la mayoría de las distribuciones de Linux exponen las variables de entorno como pares clave=valor (por ejemplo, clave=”valor”). Estos pares generalmente se almacenan en archivos como /etc/paths o /etc/defaults/key1 u otras ubicaciones. En algunos casos, se pueden exponer colocando entradas especiales en el archivo .bashrc o .profile de un shell.

Establecer una variable de entorno temporal

Una variable de entorno temporal es una variable definida en el búfer de proceso que existe solo durante la ejecución del programa. Se pierde cuando el programa finaliza o si el proceso finaliza y no está disponible para otros programas. El valor de la variable de entorno temporal se pierde cuando el proceso de la aplicación finaliza o finaliza. El valor de una variable de entorno temporal se puede recuperar con la herramienta Process Monitor.

export MY_VAR=value

Luego imprima el valor si MY_VAR con el comando echo:

export $MY_VAR

Verá el valor asignado como salida. Pero si abre una nueva terminal e intenta imprimir la misma variable.

Por lo tanto, el alcance de la variable de entorno exportada manualmente es solo el shell activo.

Establecer una variable de entorno permanente

Una variable de entorno permanente se define en el archivo de configuración de una aplicación. Persiste incluso después de bifurcaciones y ejecuciones y está disponible para que lo usen todos los procesos en el mismo contexto de ejecución (es decir, todos los procesos en una sola computadora). Las variables de entorno permanentes no se pierden cuando finaliza el proceso de la aplicación o cuando lo finaliza.

Dado que la última versión de macOS usa el shell Zsh, podemos agregar variables de entorno al archivo ~//.zshrc o ~/.zshenv para el usuario actual. Por ejemplo, para crear la variable de entorno JAVA_HOME y también actualizar PATH para incluir JAVA_HOME. Edite ~/.zshenv y agregue los siguientes valores:

export JAVA_HOME=$(/usr/libexec/java_home -v11)
 export PATH="$JAVA_HOME/bin:$PATH"

La primera línea establece la variable de entorno JAVA_HOME y el segundo comando antepone el directorio bin de Java a la variable de entorno PATH.

Conclusión

Las versiones anteriores a macOS 10.15 utilizan el shell Bash de forma predeterminada. Editando ese usuario ~/bash_profile para agregar variables de entorno permanentes.

Buy me a coffeeBuy me a coffee

Supportaci se ti piacciono i nostri contenuti. Grazie.

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.