Linux进阶:环境变量

环境变量是一组信息记录,类型是KeyValue型(名=值),用于操作系统运行的时候记录关键信息.

env命令:查看系统全部的环境变量

语法:env

$符号:取出指定的环境变量的值

语法:$变量名

示例:

echo $PATH,输出PATH环境变量的值

echo ${PATH}ABC,输出PATH环境变量的值以及ABC。如果变量名和其它内容混淆在一起,可以使用${}

PATH变量

  • 环境变量PATH会记录一组目录,目录之间用:隔开。

    • 这里记录的是命令的搜索路径,当执行命令时会从记录中的目录中逐个搜索要执行的命令并执行。
  • 可以通过修改这个项目的值,加入自定义的命令搜索路径。如:export PATH=$PATH:自定义路径

注意 :修改PATH时,必须添加$PATH,否则变成了使用自定义路径覆盖PATH的值,而不是给PATH中添加值

PATH变量使用说明

使用cd指令运行说明PATH作用:

无论当前工作目录是什么,都能执行/usr/bin/cd这个程序,就是借助环境变量中:PATH这个项目的值来做到的。

  • 查看PATH变量:env | grep PATH:PATH=/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/adailly/.local/bin:/home/adailly/bin

  • PATH记录了系统执行任何命令的搜索路径,如上(路径之间以:隔开):

    • /usr/local/bin
    • /usr/bin
    • /usr/local/sbin
    • /usr/sbin
    • /home/adailly/.local/bin
    • /home/adailly/bin
  • 当执行任何命令,都会按照顺序,从上述路径中搜索要执行的程序的本体。

  • 执行cd命令,就从第二个目录/usr/bin中搜索到了cd命令,并执行。

  • 可通过which cd 查找到cd指令的执行文件路径:/usr/bin/cd

修改环境变量

  • 临时设置,语法:export 变量名=变量值
  • 永久生效
    • 针对当前用户生效,配置在当前用户的: ~/.bashrc文件中
    • 针对所有用户生效,配置在系统的: /etc/profile文件中
    • 配置完成,通过:source 配置文件,进行立刻生效,或重新登录生效

自定义修改环境变量

环境变量PATH这个项目里面记录了系统执行命令的搜索路径。

这些搜索路径我们也可以自行添加到PATH中去。

测试:

  • 在当前HOME目录内创建文件夹myenv,在文件夹内创建文件mkhello
  • 通过vim编辑器,在mkhello文件内填入:echo hello
  • 完成上述操作后,随意切换工作目录,执行mkhello命令尝试一下,会发现无法执行

修改PATH的值:

  • 临时修改PATH:export PATH=$PATH:/home/user/myenv,再次执行mkhello,则在任何地方都可以执行
  • 或将export PATH=$PATH:/home/user/myenv,填入用户环境变量文件或系统环境变量文件中去。
  • 执行source环境变量文件,则在任何地方都可以执行
相关推荐
贵州诚鑫致达科技有限公司2 小时前
Linux的yum源怎么重启?源不是服务
linux·运维·服务器
澜山奕秋5 小时前
RHCSA
linux·运维·服务器
Web极客码6 小时前
告别流式截断:我用客户端中间件解决长文本 API 跨国 SSE 断连与数据自愈
linux·agent 图
cnnews6 小时前
Chromebox3安装Ubuntu后内存化与最小化 eMMC 写入优化
linux·运维·ubuntu
flytalei7 小时前
Ubuntu 24.04 单节点 K3s 部署实践:从环境评估到故障排查与验收
linux·运维·ubuntu
Starry-sky(jing)7 小时前
Hermes Agent 部署后怎么升级?v0.21.7 Linux 源代码版实测
linux·人工智能·ai agent·版本升级·hermes agent
水饺编程7 小时前
第2章:Linux 基础,clear 命令
linux·c语言·汇编
GeW8 小时前
新质生产力路线图Linux和数据库自主可控实践指南
linux
yunwei378 小时前
eBPF 教程:BPF 迭代器用于内核数据导出
linux·后端·性能优化
别动我齐刘海9 小时前
实时控制学习2
linux·c++·人工智能·学习·算法