Linux环境变量

Linux环境变量

环境变量是一种存储在操作系统中的特殊变量,用于存储有关系统环境和配置的信息。

它们被用于指定命令行工具和应用程序的行为,以及为用户提供方便的配置选项。

在Linux系统中执行:env命令即可查看当前系统中记录的环境变量。

环境变量是以键值对的形式存在的,其中键是变量的名称,值是变量的内容。

image-20230628145755839

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

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

  • /usr/local/sbin
  • /usr/local/bin
  • /usr/sbin
  • /usr/bin
  • /root/bin

当执行任何命令,都会按照顺序,从上述路径中搜索要执行的程序本体,比如执行cd命令,就从第二个目录/usr/bin中搜索到了cd命令,并执行。


$符号

在Linux系统中,$符号被用于取”变量“的值。

环境变量记录的信息,除了给操作系统自己使用外,如果我们想要取用,也可以使用。

取环境变量的值就可以通过语法:$环境变量名 来取。
  • 比如:echo $PATH
  • 当和其他内容混合在一起的时候,可以通过{}来标注的变量,如:echo ${PATH}ABC
image-20230628151258344

自行设置环境变量

Linux环境变量可以用户自行设置,其中分为

  • 临时设置

    语法:export 变量名=变量值
    
    image-20230629092741182
  • 永久生效

    • 针对当前用户生效,配置当前用户的:~/bashrc文件中。

    • 针对所有用户生效,配置在系统的:/etc/profile文件中。

      image-20230629094145223
    • 并通过语法:source {配置文件},进行立刻生效,或重新登录FinalShell生效。

      image-20230629094254477

自定义环境变量PATH

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

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

当我们在终端输入一个命令时,系统会按照一定的顺序在PATH环境变量指定的路径中搜索该命令的可执行文件。

如果找到了该文件,则执行该命令;如果没有找到,则会提示“命令未找到”的错误信息。


测试

  • 在当前HOME目录内创建文件夹,myenv,在文件夹内创建文件mk
  • 通过vim编辑器,在mk文件内填入:echo “测试”
image-20230705154341762

完成如上操作后,随意切换工作目录,执行mk命令尝试一下,会发现无法执行。

image-20230705154535458

修改PATH的值

  • 临时修改PATH的值

    export PATH=$PATH:/root/myenv
    
  • 或者,执行vim /etc/profile命令永久修改PATH的值

    image-20230705155006907

修改完后,执行source /etc/profile命令,就可以在任意目录下直接输入文件名执行脚本。

image-20230705162802913
posted @ 2023-07-05 16:51  克峰同学  阅读(120)  评论(0编辑  收藏  举报