Linux Environment Variables

支持 HackTricks

全局变量

全局变量 将被 子进程 继承

您可以通过以下方式为当前会话创建全局变量:

export MYGLOBAL="hello world"
echo $MYGLOBAL #Prints: hello world

这个变量将可以被您当前的会话及其子进程访问。

您可以通过以下方式删除一个变量:

unset MYGLOBAL

Local variables

局部变量只能被当前的 shell/脚本访问。

LOCAL="my local"
echo $LOCAL
unset LOCAL

列出当前变量

set
env
printenv
cat /proc/$$/environ
cat /proc/`python -c "import os; print(os.getppid())"`/environ

Common variables

From: https://geek-university.com/linux/common-environment-variables/

  • DISPLAYX 使用的显示器。此变量通常设置为 :0.0,这意味着当前计算机上的第一个显示器。

  • EDITOR – 用户首选的文本编辑器。

  • HISTFILESIZE – 历史文件中包含的最大行数。

  • HISTSIZE – 用户完成会话时添加到历史文件的行数。

  • HOME – 你的主目录。

  • HOSTNAME – 计算机的主机名。

  • LANG – 你当前的语言。

  • MAIL – 用户邮件存储的位置。通常是 /var/spool/mail/USER

  • MANPATH – 搜索手册页的目录列表。

  • OSTYPE – 操作系统的类型。

  • PS1 – bash 中的默认提示符。

  • PATH – 存储所有目录的路径,这些目录包含你想通过指定文件名而不是相对或绝对路径执行的二进制文件。

  • PWD – 当前工作目录。

  • SHELL – 当前命令 shell 的路径(例如,/bin/bash)。

  • TERM – 当前终端类型(例如,xterm)。

  • TZ – 你的时区。

  • USER – 你当前的用户名。

Interesting variables for hacking

HISTFILESIZE

此变量的值更改为 0,这样当你 结束会话 时,历史文件(~/.bash_history)将被删除

export HISTFILESIZE=0

HISTSIZE

将此变量的值更改为 0,这样当您结束会话时,任何命令都将被添加到历史文件(~/.bash_history)中。

export HISTSIZE=0

http_proxy & https_proxy

进程将使用此处声明的 proxy 通过 http 或 https 连接到互联网。

export http_proxy="http://10.10.10.10:8080"
export https_proxy="http://10.10.10.10:8080"

SSL_CERT_FILE & SSL_CERT_DIR

进程将信任这些环境变量中指示的证书。

export SSL_CERT_FILE=/path/to/ca-bundle.pem
export SSL_CERT_DIR=/path/to/ca-certificates

PS1

更改提示的外观。

这是一个示例

Root:

普通用户:

一个、两个和三个后台作业:

一个后台作业,一个已停止,最后一个命令未正确完成:

支持 HackTricks

Last updated