📜  powershell print env all - Shell-Bash (1)

📅  最后修改于: 2023-12-03 15:33:46.679000             🧑  作者: Mango

PowerShell Print Env All - Shell-Bash

简介

Powershell Print Env All是一个Windows环境下的命令行命令。它可以打印出操作系统中所有的环境变量,并以键值对的形式输出。

Shell-Bash是一个Linux环境下的命令行命令。它可以列出当前Shell的所有变量,并以键值对的形式输出。

比较类似的命令有:

  • Windows - set
  • Linux - env
用法
Powershell

在Powershell命令行中输入以下命令即可:

Get-ChildItem Env: | sort-object name | Format-Table -AutoSize -Wrap

此命令将从Env:命名空间中获取所有环境变量,并按名称对其进行排序,最终格式化输出。

Shell-Bash

在Shell-Bash命令行中输入以下命令即可:

printenv | sort | awk '{split($0,a,"="); printf "%-30s %s\n",a[1],a[2]}'

此命令将使用printenv命令获取所有环境变量,然后将其按名称排序,并使用awk命令将每个变量名称和值输出为键值对的格式。

返回值

以上命令的返回值均为环境变量列表。其中,Powershell命令将返回一个格式化的表格,Shell-Bash命令将返回一组键值对。

示例

Powershell

|Name                           |Value                      |
|----                           |-----                      |
|APPDATA                        |C:\Users\<username>\AppData\Roaming|
|CommonProgramFiles             |C:\Program Files\Common Files|
|ProgramData                    |C:\ProgramData             |
|ProgramFiles                   |C:\Program Files            |
|ProgramFiles(x86)              |C:\Program Files (x86)      |
|ProgramW6432                   |C:\Program Files            |
|SystemDrive                    |C:                         |
|SystemRoot                     |C:\Windows                 |
|TEMP                           |C:\Users\<username>\AppData\Local\Temp|
|USERDOMAIN                     |<domain>                   |
|USERDOMAIN_ROAMINGPROFILE      |<domain>                   |
|USERNAME                       |<username>                 |
|USERPROFILE                    |C:\Users\<username>         |
|windir                         |C:\Windows                 |

Shell-Bash

BASH                           /bin/bash
BASH_ARGC                      0
BASH_ARGV                      ()
BASH_LINENO                    ()
BASH_SOURCE                    ()
BASH_VERSINFO                  4
BASH_VERSION                   4.2.46(2)-release
COLUMNS                        80
DIRSTACK                       ()
EUID                           1000
GROUPS                         (1000)
HISTFILESIZE                   100000
HISTORYSIZE                    1000
HOME                           /home/user
HOSTNAME                       <hostname>
HOSTTYPE                       x86_64
IFS                            [ \t\n]
LANG                           en_US.UTF-8
LANGUAGE                       en
LINES                          24
LOGNAME                        user
MACHTYPE                       x86_64-pc-linux-gnu
MAIL                           /var/mail/user
OLDPWD                         
OPTERR                         1
OPTIND                         1
OSTYPE                         linux-gnu
PATH                           /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
PIPESTATUS                     (0)
PPID                           1234
PS1                            ${debian_chroot:+($debian_chroot)}\u@\h:\w\$
PS2                            >
PS4                            +
PWD                            /home/user
SHELL                          /bin/bash
SHELLOPTS                      braceexpand:hashall:interactive-comments
SHLVL                          1
SSH_AUTH_SOCK                 /var/run/ssh-agent.sock
TERM                           xterm
UID                            1000
USER                           user
_                              /usr/bin/printenv
风险

Powershell和Shell-Bash命令均可以获取系统中所有的环境变量。在某些情况下,此操作可能会泄露敏感信息,因此在生产环境中使用时应谨慎。