Linux 中你应该知道的 5 个环境变量

Linux 中的环境变量可以定义为一组变量,用于描述应用程序或程序运行的环境。 这些变量不是在文件中明确定义或存储的,而是在执行程序时定义的。

Linux 中的环境变量列表

在本单元中,我们将介绍 Linux 用户可能感兴趣的一些环境,并了解它们各自的含义。

1. 用户

此变量指定您登录的用户。 您可以使用以下命令查看此内容:

$ echo $USER brucewayne 

请注意,即使在运行时,此命令仍会为您提供原始用户名 sudo 特权,因为即使使用提升的特权来唤起它 sudo,用户保持不变。

$ sudo echo $USER brucewayne 

当您想知道您登录的用户时,这可能是实用的,这是 CTF 的常见场景。

2. 家

这个环境变量定义了我们用户的主目录。 众所周知,当我们使用以下命令时,它们会将我们带到用户的主目录:

$ cd 

或者,

$ cd ~ 

但是,如果我们想将主目录更改为其他目录,我们可以简单地更改我们的值 环境变量:

$  HOME=/path/to/directory 

了解有关设置环境变量的更多信息 这里.

3. 期限

学期 是Linux中连接用户登录的程序设置的环境变量之一。 它定义了登录终端类型。 您可以获取可能的值列表 学期 变量:

$ ls /lib/terminfo/x/ x10term       xnuppc+80x30    xnuppc-80x30-m   xnuppc-256x96    xterm+edit      xterm+sm+1002     xterm-basic    xterm-vt220 x68k          xnuppc+90x30    xnuppc-90x30     xnuppc-256x96-m  xterm+indirect  xterm+sm+1003     xterm-bold     xterm-x10mouse x68k-ite      xnuppc+100x37   xnuppc-90x30-m   xnuppc-b         xterm+kbs       xterm+sm+1005     xterm-color    xterm-x11hilite x820          xnuppc+112x37   xnuppc-100x37    xnuppc-f         xterm+keypad    xterm+sm+1006     xterm-direct   xterm-x11mouse x1700         xnuppc+128x40   xnuppc-100x37-m  xnuppc-f2        xterm+noalt     xterm+titlestack  xterm-direct2  xterm-xf86-v32 x1700-lm      xnuppc+128x48   xnuppc-112x37    xnuppc-m         xterm+noapp     xterm+tmux        xterm-hp       xterm-xf86-v33 x1720         xnuppc+144x48   xnuppc-112x37-m  xnuppc-m-b       xterm+osc104    xterm+vt+edit     xterm-kitty    xterm-xf86-v40 x1750         xnuppc+160x64   xnuppc-128x40    xnuppc-m-f       xterm+pc+edit   xterm+x10mouse    xterm-mono     xterm-xf86-v43 xdku          xnuppc+200x64   xnuppc-128x40-m  xnuppc-m-f2      xterm+pcc0      xterm+x11hilite   xterm-new      xterm-xf86-v44 xenix         xnuppc+200x75   xnuppc-128x48    xtalk            xterm+pcc1      xterm+x11mouse    xterm-nic      xterm-xf86-v333 xerox         xnuppc+256x96   xnuppc-128x48-m  xterm            xterm+pcc2      xterm-8bit        xterm-noapp    xterm-xfree86 xerox-lm      xnuppc+b        xnuppc-144x48    xterm+88color    xterm+pcc3      xterm-16color     xterm-old      xterm-xi xerox820      xnuppc+basic    xnuppc-144x48-m  xterm+256color   xterm+pce2      xterm-24          xterm-pcolor   xterm.js xerox1720     xnuppc+c        xnuppc-160x64    xterm+256setaf   xterm+pcf0      xterm-88color     xterm-r5       xterm1 xfce          xnuppc+f        xnuppc-160x64-m  xterm+alt+title  xterm+pcf2      xterm-256color    xterm-r6       xtermc xiterm        xnuppc+f2       xnuppc-200x64    xterm+alt1049    xterm+pcfkeys   xterm-1002        xterm-sco      xtermm xl83          xnuppc-80x25    xnuppc-200x64-m  xterm+app        xterm+r6f2      xterm-1003        xterm-sun      xterms xnuppc        xnuppc-80x25-m  xnuppc-200x75    xterm+direct     xterm+sl        xterm-1005        xterm-utf8     xterms-sun xnuppc+80x25  xnuppc-80x30    xnuppc-200x75-m  xterm+direct2    xterm+sl-twm    xterm-1006        xterm-vt52     xwsh 

4. 编辑

这定义了用于编辑系统上的文本文件的默认编辑器。 当您使用 编辑 命令或使用快捷方式,如 Ctrl+X+E

调用命令时使用相同的编辑器 须藤编辑. 通常最好将此变量设置为指向 vim 代替 纳米 [Read the difference between vim and nano]

5. 路径

小路 在我看来,这可能是 Linux 中最有趣的环境变量。 它基本上由系统查找命令的可执行文件/脚本的目录列表组成。 例如,当我们输入如下命令时 ls,系统会在列出的目录中搜索具有相同名称的可执行文件或脚本 小路 从头开始执行第一个实例 ls 它发现。

有时,您可能希望拥有自己的一组特殊二进制文件,您可能希望将其作为命令运行。 您可以通过将包含它们的目录添加到 小路.

$ echo $PATH /usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games $  PATH=$PATH:/path/to/directory $ echo $PATH /usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games:/path/to/directory 

但是,您必须小心,因为任何二进制文件与任何其他系统二进制文件/脚本的名称都不相同,因为系统会执行它找到的二进制文件/脚本的第一个实例。

结论

除了此处列出的 Linux 中的环境变量之外,还有其他几个可能是用户感兴趣的,具体取决于上下文。 你也可以在 Linux 中修改这些环境变量来改变程序的环境。 要了解我们如何更改环境变量,请查看 这个帖子.