UNIX,获取环境变量

Mik*_*ike 40 unix shell environment echo

由于一个荒谬的问题,我有一个荒谬的问题.

通常,如果我想在UNIX shell中获取环境变量的内容,我可以这样做

echo ${VAR}
Run Code Online (Sandbox Code Playgroud)

让我们假设,由于我的荒谬情况,这是不可能的.

如何在没有查看命令本身(而不是输出)的人的情况下将环境变量的内容获取到stdout,查看环境变量的值.

我可以想象解决方案是类似的,echo env(NAME_OF_VAR)虽然我似乎无法找到它.解决方案必须在sh中工作.

PS我不能为此编写脚本,它必须是内置的unix命令(我知道,荒谬的问题)

谢谢(抱歉荒谬)

Ser*_*kov 58

你可以做:

printenv VARIABLE_NAME


小智 9

使用${!VAR_NAME}应该是你正在寻找的

> FOO=BAR123
> VAR_NAME=FOO
> echo ${VAR_NAME}
FOO
> echo ${!VAR_NAME}
BAR123
Run Code Online (Sandbox Code Playgroud)


ASR*_*ASR 7

在终端中键入以下命令,它将显示所有环境变量列表

printenv

现在打印想要的变量,如下所示:

echo $ VARIABLENAME