Las variables de entorno son variables transmitidas a los programas por la línea de comando o el shell gráfico. Cuando se hace referencia a una variable de entorno, se hace referencia a su valor (cualquiera que sea la variable definida).
Aunque hay una serie de variables de entorno que solo afectan la línea de comando o el shell gráfico en sí (como PATH o HOME), también hay varias que afectan directamente cómo se ejecutan los scripts de Ruby.
Consejo: las variables de entorno Ruby son similares a las que se encuentran en el sistema operativo Windows. Por ejemplo, los usuarios de Windows pueden estar familiarizados con una variable de usuario TMP para definir la ubicación de la carpeta temporal para el usuario actualmente conectado.
Ruby tiene acceso directo a las variables de entorno a través del hash ENV. Las variables de entorno se pueden leer o escribir directamente utilizando el operador de índice con un argumento de cadena.
Tenga en cuenta que escribir en variables de entorno solo tendrá un efecto en los procesos secundarios del script Ruby. Otras invocaciones del script no verán los cambios en las variables de entorno..
#! / usr / bin / env ruby
# Imprimir algunas variables
pone ENV ['RUTA']
pone ENV ['EDITOR']
# Cambiar una variable y luego lanzar un nuevo programa
ENV ['EDITOR'] = 'gedit'
'cheat environment_variables --add'
Para pasar variables de entorno a Ruby, simplemente configure esa variable de entorno en el shell. Esto varía ligeramente entre los sistemas operativos, pero los conceptos siguen siendo los mismos..
Para establecer una variable de entorno en el símbolo del sistema de Windows, use el comando set.
> establecer TEST = valor
Para establecer una variable de entorno en Linux u OS X, use el comando de exportación. Aunque las variables de entorno son una parte normal del shell Bash, solo las variables que han sido exportado estará disponible en programas lanzados por el shell Bash.
$ export TEST = valor
Alternativamente, si la variable de entorno solo será utilizada por el programa a punto de ejecutarse, puede definir cualquier variable de entorno antes del nombre del comando. La variable de entorno se pasará al programa a medida que se ejecuta, pero no se guardará. Las invocaciones adicionales del programa no tendrán este conjunto de variables de entorno.
$ EDITOR = gedit cheat environment_variables --add
Existen varias variables de entorno que afectan la forma en que actúa el intérprete de Ruby..