Hemos hablado en algunas ocasiones de las variables de entorno pero no las hemos tocado a fondo,por ejemplo el $PS1,$PS2,$LS_COLORS,etc.
Las variables de entorno cambian el comportamiento del sistema,un tanto en modo shell y también en modo gráfico ya que se definen variables que pueden modificar el comportamiento del sistema total.
Un ejemplo de ello son las locales,variables de entorno local de lenguaje,en mi caso:
Las variables de entorno son variables de lenguaje de programación,en este caso Bash pero puede ser sh,tcsh,etc dependiendo de la Shell que uses, en bash se definen las variables así:
Las variables que usamos en el lenguaje de programación bash mediante scripts,se aislan en el script,por ejemplo si creamos un script que contenga:
#/bin/bash
hola="hola"
mundo="mundo"
echo $hola $mundo
Y lo ejecutamos:
Se debería asignar el valor "hola" a la variable hola al ejecutar el script,así que si en la linea de comandos escribiéramos:
Debería imprimir el valor de hola que le dimos en el script,pero no,porque se aisla su contenido en el mismo script,en cambio si en la linea de comandos defiriéramos una variable:
Y la imprimiéramos
Si nos mostraría resultados,esto es porque la linea de comandos es una consola dinámica para bash,como la de python por ejemplo.
Las variables de entorno son variables que usa el sistema,estas son definidas con mayúsculas y las define automaticamente el sistema o los programas que las usan,las variables mas comunes son:
HOME # Muestra nuestro home
PWD # Muestra el lugar donde estamos
OLDPWD # Muestra el ultimo lugar donde estuvimos(se define cuando visitamos mas de dos lugares en el sistema,con el comando cd)
TERM # Muestra la terminal por defecto
LOGNAME # Muestra el nombre del usuario actual
LANG # Muestra el lenguaje
DESKTOP_SESSION # Muestra la sesión gráfica(entorno de escritorio)
SHELL # Muestra la sesión de linea de comandos(shell)
PATH # Muestra el lugar donde se encuentran los programas ejecutables
LS_COLORS # Muestra los colores que usan los programas con argumento (--color=auto)
PS1 # Muestra la configuracion del entorno (shell)
PS2 # Muestra la configuracion del entorno (shell) al acceder al PS2
Esto no solo es de Linux,GNU/Linux y todos los *nix que usan Bash,esto también existe en Windows/MS-DOS.
Para definir una variable de entorno se usa el comando
Por ejemplo
Y para acceder seria por ejemplo:
Otro ejemplo es por ejemplo añadir rutas de ejecutables,por ejemplo cuando trabajamos con Perl:
Nota:En este caso estamos modificando una variable de entorno y se usa:
Por ejemplo:
Para ver todas las variables de entorno o casi todas tecleamos:
o
Y para guardar la variable de entorno la metemos en nuestro bashrc:
Y exportamos las variables que queramos.
Eso es todo :D
Nota:Cuidado al modificar variables de entorno,en especial(PATH)
Leer más...
Las variables de entorno cambian el comportamiento del sistema,un tanto en modo shell y también en modo gráfico ya que se definen variables que pueden modificar el comportamiento del sistema total.
Un ejemplo de ello son las locales,variables de entorno local de lenguaje,en mi caso:
es_MX.utf8
Las variables de entorno son variables de lenguaje de programación,en este caso Bash pero puede ser sh,tcsh,etc dependiendo de la Shell que uses, en bash se definen las variables así:
variable=valor
Las variables que usamos en el lenguaje de programación bash mediante scripts,se aislan en el script,por ejemplo si creamos un script que contenga:
#/bin/bash
hola="hola"
mundo="mundo"
echo $hola $mundo
Y lo ejecutamos:
bash holamundo.sh
Se debería asignar el valor "hola" a la variable hola al ejecutar el script,así que si en la linea de comandos escribiéramos:
echo $hola
Debería imprimir el valor de hola que le dimos en el script,pero no,porque se aisla su contenido en el mismo script,en cambio si en la linea de comandos defiriéramos una variable:
hola="hola"
Y la imprimiéramos
echo $hola
Si nos mostraría resultados,esto es porque la linea de comandos es una consola dinámica para bash,como la de python por ejemplo.
Las variables de entorno son variables que usa el sistema,estas son definidas con mayúsculas y las define automaticamente el sistema o los programas que las usan,las variables mas comunes son:
HOME # Muestra nuestro home
PWD # Muestra el lugar donde estamos
OLDPWD # Muestra el ultimo lugar donde estuvimos(se define cuando visitamos mas de dos lugares en el sistema,con el comando cd)
TERM # Muestra la terminal por defecto
LOGNAME # Muestra el nombre del usuario actual
LANG # Muestra el lenguaje
DESKTOP_SESSION # Muestra la sesión gráfica(entorno de escritorio)
SHELL # Muestra la sesión de linea de comandos(shell)
PATH # Muestra el lugar donde se encuentran los programas ejecutables
LS_COLORS # Muestra los colores que usan los programas con argumento (--color=auto)
PS1 # Muestra la configuracion del entorno (shell)
PS2 # Muestra la configuracion del entorno (shell) al acceder al PS2
Esto no solo es de Linux,GNU/Linux y todos los *nix que usan Bash,esto también existe en Windows/MS-DOS.
Para definir una variable de entorno se usa el comando
export VARIABLE="VALOR"
Por ejemplo
export PDF="/home/$LOGNAME/Descargas/pdf"
Y para acceder seria por ejemplo:
cd $PDF
Otro ejemplo es por ejemplo añadir rutas de ejecutables,por ejemplo cuando trabajamos con Perl:
Nota:En este caso estamos modificando una variable de entorno y se usa:
VAR="$VAR:mas valores"
Por ejemplo:
PATH="home/$LOGNAME/perl5/bin:$PATH" # PATH=VAR : $PATH
Para ver todas las variables de entorno o casi todas tecleamos:
env
o
printenv
Y para guardar la variable de entorno la metemos en nuestro bashrc:
echo 'export VARIABLE="VALOR"' >> ~/.bashrcO
nano ~/.bashrc # nano o {vim,gedit,VI,kate,joe,etc}
Y exportamos las variables que queramos.
Eso es todo :D
Nota:Cuidado al modificar variables de entorno,en especial(PATH)