miércoles, 18 de noviembre de 2015

Examinando el entorno

Para ver qué hay almacenado en el entorno, podemos usar el comando integrado en bash set o el programa printenv. El comando set nos mostrará tanto las variables del shell como las del entorno, mientras que printenv sólo mostrará estas últimas. Como nuestra lista de contenidos del entorno será muy larga, es mejor canalizar la salida de cualquiera de los comandos a less:

[me@linuxbox ~]$ printenv | less

Hacíendolo, deberíamos obtener algo parecido a esto:

KDE_MULTIHEAD=false
SSH_AGENT_PID=6666
HOSTNAME=linuxbox
GPG_AGENT_INFO=/tmp/gpg-PdOt7g/S.gpg-agent:6689:1
SHELL=/bin/bash
TERM=xtermXDG_MENU_PREFIX=kde-
HISTSIZE=1000
XDG_SESSION_COOKIE=6d7b05c65846c3eaf3101b0046bd2b00-
1208521990.996705-1177056199
GTK2_RC_FILES=/etc/gtk-2.0/gtkrc:/home/me/.gtkrc-
2.0:/home/me/.kde/share/config/gtkrc-2.0
GTK_RC_FILES=/etc/gtk/gtkrc:/home/me/.gtkrc:/home/me/.kde/share/config/gtkrc
GS_LIB=/home/me/.fonts
WINDOWID=29360136
QTDIR=/usr/lib/qt-3.3
QTINC=/usr/lib/qt-3.3/include
KDE_FULL_SESSION=true
USER=me
LS_COLORS=no=00:fi=00:di=00;34:ln=00;36:pi=40;33:so=00;35:bd=40;33;01:cd=40;33;01:or=01;05;37;41:mi=01;05;37;41:ex=00;32:*.cmd=00;32:*.exe:

Lo que vemos es una lista de las variables de entorno y sus valores. Por ejemplo, vemos una variable llamada USER, que contiene el valor “me”. El comando printenv puede listar también el valor de una variable específica:

[me@linuxbox ~]$ printenv USER
me

El comando set, cuando lo usamos sin opciones o argumentos, mostrará tanto las variables del shell como las del entorno, así como cualquier función definida del shell. Al contrario de printenv, su salida está cortésmente ordenada alfabéticamente:

[me@linuxbox ~]$ set | less

También es posible ver el contenido de una variable usando el comando echo, así:

[me@linuxbox ~]$ echo $HOME
/home/me

Un elemento del entorno que ni set ni printenv muestran son los alias. Para verlos, introduce el comando alias sin argumentos:

[me@linuxbox ~]$ alias
alias l.='ls -d .* --color=tty'
alias ll='ls -l --color=tty'
alias ls='ls --color=tty'
alias vi='vim'
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'

No hay comentarios:

Publicar un comentario