¿Cómo enumerar todos los nombres de las variables y sus valores actuales?

¿Cómo enumerar todos los nombres de las variables y sus valores actuales?

¿Cómo enumerar todos los nombres de las variables y sus valores actuales?

Incluyendo no solo $HOME, $PWDetc sino cualquier otro que hayas definido.

Respuesta1

Para fiesta:(el shell estándar en Ubuntu)

Ingrese el siguiente comando en una terminal para imprimir todas las variables de entorno:

printenv

Para obtener más información sobre este comando, lea elprintenvpágina de manual.


Para mostrar una lista que incluya las "variables de shell", puede ingresar el siguiente comando:

( set -o posix ; set ) | less

esto te mostrarano sololas variables de shell, pero también las variables de entorno.

Para más información relacionada con este tema lea:


Para zsh:(un caparazón avanzado)

Utilice el siguiente comando:

( setopt posixbuiltin; set; ) | less

Para obtener más información sobre las opciones de ZSH, consultezshoptionspágina de manual.

Respuesta2

Puedes ver todas las variables con el declarearchivo incorporado.

declare -p

Si solo está interesado en las variables de entorno, use

declare -xp

Corre help declarepara ver cuáles son las otras opciones.

Respuesta3

Sé que esta pregunta es bastante antigua y está respondida, pero creo que puedo agregar un poco de información útil.

En todos los métodos descritos anteriormente, el procedimiento que se sugiere es:

  • lanzar una terminal
  • mostrar las variables de entorno usando env, o printenvo lo que sea

El problema de estas soluciones es que estás viendo las variables de entorno.del shell que se ejecuta en la terminal. No ve las variables de entorno disponibles para una aplicación ejecutada, por ejemplo, directamente mediante la interfaz gráfica.

Esto se nota si, por ejemplo, usa su ~/.profile, o .bashrc, o .zshenv(dependiendo de su shell) para modificar las variables de entorno, como la clásica adición de directorios a la ruta.

Para ver las variables de entorno disponibles para la aplicación iniciada directamente en el entorno gráfico, puedes hacer lo siguiente (en Gnome Shell, estoy seguro de que existe un método equivalente en todos los demás DE):

  • presione Alt-F2
  • ejecutar el comandoxterm -e bash --noprofile --norc

(O, si no lo tiene xterm, gnome-terminal -- bash --noprofile --norc--- gracias a @Mike Nakis por el comentario).

Ahora tiene una terminal con un shell que no agregó ninguna variable de entorno. Puede utilizar envaquí para enumerar todas sus variables de entorno:

Ejemplo del caparazón desnudo

Obviamente, el nuevo shell tendrá las variables de entorno agregadas por los archivos del sistema, pero esas variables deberían estar disponibles (por herencia) para todos los programas del sistema de todos modos.

Estoy publicando esto porque es la cuarta vez que tengo que buscar este truco nuevamente, revisando mi .pam_environmentarchivo. Así que ahora lo encontraré más rápido (y en el proceso, espero ayudar a alguien más...)

Respuesta4

Para enumerar las variables de entorno en la terminal con ++ CTRLpuedes usar el comando.ALTTenv

Por ejemplo :

[raja@localhost ~]$ env
XDG_VTNR=1
SSH_AGENT_PID=3671
XDG_SESSION_ID=3
HOSTNAME=localhost.localdomain
IMSETTINGS_INTEGRATE_DESKTOP=yes
GPG_AGENT_INFO=/home/raja/.gnupg/S.gpg-agent:3691:1
GLADE_PIXMAP_PATH=:
TERM=xterm-256color
SHELL=/bin/bash
XDG_MENU_PREFIX=xfce-
DESKTOP_STARTUP_ID=
HISTSIZE=1000
XDG_SESSION_COOKIE=0250277dd805498381e96c05d88068b0-1364679772.845276-1676152201
WINDOWID=65011716
GNOME_KEYRING_CONTROL=/home/raja/.cache/keyring-N3QoQ2
IMSETTINGS_MODULE=none
QT_GRAPHICSSYSTEM_CHECKED=1
USER=raja

etc.

Espero que ayude.

información relacionada