环境变量是操作系统或应用程序运行时的动态值,它们影响进程的行为。在Linux系统中,环境变量是键值对(key-value)的形式存在,可以被shell和其他程序访问。
查看所有环境变量:
printenv
# 或
env
查看特定环境变量:
echo $变量名
# 例如
echo $PATH
作用:指定可执行程序的搜索路径
echo $PATH
# 通常显示为:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
bash
export PATH=$PATH:/新路径
作用:当前用户的主目录路径
echo $HOME
# 通常显示为:/home/用户名
作用:当前登录的用户名
echo $USER
作用:当前使用的shell程序路径
echo $SHELL
# 通常显示为:/bin/bash
作用:当前工作目录路径
echo $PWD
作用:语言和区域设置
echo $LANG
# 通常显示为:en_US.UTF-8 或 zh_CN.UTF-8
作用:终端类型
echo $TERM
# 通常显示为:xterm-256color
作用:默认文本编辑器
echo $EDITOR
# 可以设置为vim/nano等
作用:主命令提示符格式
echo $PS1
# 可以自定义命令行提示符
作用:控制命令历史记录大小
echo $HISTSIZE # 内存中保存的历史命令数量
echo $HISTFILESIZE # 历史文件保存的命令数量
export 变量名=值
# 例如
export MY_VAR="test"
对当前用户:编辑~/.bashrc
或~/.bash_profile
或~/.profile
文件,添加:
export 变量名=值
然后执行:
source ~/.bashrc
对所有用户:编辑/etc/environment
或/etc/profile
文件(需要root权限)
$?:上一个命令的退出状态
echo $?
# 0表示成功,非0表示失败
$$:当前shell的进程ID
echo $$
$0:当前脚本或命令的名称
echo $0
$1, $2, ... $n:脚本或函数的参数
# 在脚本中
echo "第一个参数: $1"
# 临时添加
export PATH=$PATH:/opt/myapp/bin
# 永久添加(对当前用户)
echo 'export PATH=$PATH:/opt/myapp/bin' >> ~/.bashrc
source ~/.bashrc
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
export PATH=$PATH:$JAVA_HOME/bin
# 在~/.bashrc中添加
export PS1='\u@\h:\w\$ '
# \u - 用户名
# \h - 主机名
# \w - 当前工作目录
通过合理设置和使用环境变量,可以大大提高Linux系统的工作效率和个性化程度。