Linux 环境变量详解

1. 系统定义好的变量

  • PATH:决定了 shell 将到哪些目录中寻找命令或程序
  • HOME:用户的家目录
  • USER:用户登录的用户名。
  • PWD:当前系统路径(当前用户所在目录)
  • HISTSIZE:shell 的历史记录, 能记录最多历史命令的条数
  • LOGNAME:用户的登录名(等同于 USER)
  • HOSTNAME:主机的名称
  • HOST:指主机的名称(macos)
  • SHELL:当前用户正在使用的shell, 默认使用的是 /bin/bash
  • LANGUGE:语言相关的环境变量,多语言可以修改此环境变量(不重要)
  • MAIL:用户邮件的存放目录(不重要)

2. 变量周期分类

  1. 零时变量: 用 export 命令在终端环境下声明变量,重启 Shell 就会失效
  2. 永久变量: 用户将变量添加到相关的配置文件,如: /etc/profile ~/.bash_profile ~/.zshrc ,添加后则永久生效, 重启 shell 也不会失效,

3. 变量作用域分类

  1. 用户级: 仅对设置这个变量的用户生效,对其他用户则无效
    • 将环境变量写进用户目录下的~/.bash_profile~/.zshrc 文件里面
    • .bash_profile 是针对 bash 用户的, .zshrc 是针对 zsh 用户的.
  2. 系统级: 对该系统中所有用户都有效
    • 将环境变量写进系统目录下的 /etc/profile 文件里面

书写格式

这里我们约定俗成一下名词: 变量值=路径

# 单变量值
export 变量名=路径1

# 多变量值
export 变量名=路径1:路径2:路径3:路径4

# 引用变量作为变量值
export 变量名=$变量1:$变量2:路径1:路径2
  1. 如果直接写成 export PATH=/.../.../..., 这样新添加的变量会覆盖 PATH 之前的所有的变量值,若想不覆盖就要书写成 export PATH=$PATH:/.../...
    • $PATH 的作用是新加的路径也包含自己, 相当于引用了 PATH 自己现有的变量值
    • 这里的 $ 符号可以理解为引用符号, 引用已经定义的变量的值
  2. 追加多条路径由 : 进行分隔, 如: export PATH=$PATH:$HOME/nvim/:/tmp/ , :后面加上自己要追加的路径, 新加的路径会追加到 PATH 里面

4. 变量相关命令

  1. env: 查看当前用户全部的环境变量
  2. export: 显示当前系统定义的所有环境变量, 设置环境变量
  3. printenv: 查看指定环境变量的值
  4. unset: 清除指定环境变量
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值