variable usuario sirven script que para las hat entorno ejemplos editar crear linux bash unix shell

linux - usuario - variables de entorno en red hat



Establecer variables de entorno en Linux usando Bash (5)

Establecer una variable local y de entorno usando Bash en Linux

Compruebe si hay variables locales o de entorno para una variable llamada LOL en Bash:

el@server /home/el $ set | grep LOL el@server /home/el $ el@server /home/el $ env | grep LOL el@server /home/el $

Verificación de integridad, ninguna variable local o de entorno llamada LOL.

Establezca una variable local llamada LOL en local, pero no en el entorno. Así que configúralo

el@server /home/el $ LOL="so wow much code" el@server /home/el $ set | grep LOL LOL=''so wow much code'' el@server /home/el $ env | grep LOL el@server /home/el $

La variable ''LOL'' existe en variables locales, pero no en variables de entorno. LOL desaparecerá si reinicia el terminal, cierra sesión / inicia sesión o ejecuta exec bash .

Establezca una variable local y luego borre todas las variables locales en Bash

el@server /home/el $ LOL="so wow much code" el@server /home/el $ set | grep LOL LOL=''so wow much code'' el@server /home/el $ exec bash el@server /home/el $ set | grep LOL el@server /home/el $

También podría simplemente deshacer la única variable:

el@server /home/el $ LOL="so wow much code" el@server /home/el $ set | grep LOL LOL=''so wow much code'' el@server /home/el $ unset LOL el@server /home/el $ set | grep LOL el@server /home/el $

La variable local LOL se ha ido.

Promover una variable local a una variable de entorno:

el@server /home/el $ DOGE="such variable" el@server /home/el $ export DOGE el@server /home/el $ set | grep DOGE DOGE=''such variable'' el@server /home/el $ env | grep DOGE DOGE=such variable

Tenga en cuenta que exportar lo hace aparecer como una variable local y una variable de entorno.

La variable exportada DOGE anterior sobrevive a un restablecimiento de Bash:

el@server /home/el $ exec bash el@server /home/el $ env | grep DOGE DOGE=such variable el@server /home/el $ set | grep DOGE DOGE=''such variable''

Desactivar todas las variables de entorno:

Tienes que sacar una lata de Chuck Norris para restablecer todas las variables de entorno sin un logout / login:

el@server /home/el $ export CAN="chuck norris" el@server /home/el $ env | grep CAN CAN=chuck norris el@server /home/el $ set | grep CAN CAN=''chuck norris'' el@server /home/el $ env -i bash el@server /home/el $ set | grep CAN el@server /home/el $ env | grep CAN

Creó una variable de entorno y luego restableció la terminal para deshacerse de ellos.

O puede establecer y desarmar una variable de entorno manualmente de esta manera:

el@server /home/el $ export FOO="bar" el@server /home/el $ env | grep FOO FOO=bar el@server /home/el $ unset FOO el@server /home/el $ env | grep FOO el@server /home/el $

En tcsh , tengo el siguiente script funcionando:

#!/bin/tcsh setenv X_ROOT /some/specified/path setenv XDB ${X_ROOT}/db setenv PATH ${X_ROOT}/bin:${PATH} xrun -d xdb1 -i $1 > $2

¿Cuál es el equivalente a la función tcsh setenv en Bash?

¿Hay un análogo directo? Las variables de entorno son para ubicar el ejecutable.


Creo que estás buscando export , aunque podría estar equivocado. Nunca antes había jugado con tcsh. Use la siguiente sintaxis:

export VARIABLE=value


La razón por la cual la gente a menudo sugiere escribir

VAR=value export VAR

en lugar de la más corta

export VAR=value

es que la forma más larga funciona en conchas más diferentes que la forma corta. Si sabes que estás lidiando con bash , o bien funciona bien, por supuesto.


VAR=value establece VAR en valor.

Después de eso, export VAR a los procesos hijos.

export VAR=value es una taquigrafía que hace ambas cosas.


export VAR=value establecerá VAR en value. Adjúntelo en comillas simples si desea espacios, como export VAR=''my val'' . Si desea que la variable sea interpolada, use comillas dobles, como export VAR="$MY_OTHER_VAR" .