Linux系统环境变量

编程入门 行业动态 更新时间:2024-10-25 12:20:56

Linux系统<a href=https://www.elefans.com/category/jswz/34/1771433.html style=环境变量"/>

Linux系统环境变量

Linux系统环境变量

    • 1. 环境变量
      • 1.1 定义环境变量
      • 1.2 使用环境变量
    • 2. 环境变量作用
      • 2.1 PATH
    • 3. 设置环境变量
      • 3.1 设置系统级环境变量
      • 3.2 设置用户级环境变量
      • 3.3 设置临时环境变量

1. 环境变量

在Linux系统中,常用的关键信息以键值对(Key=Value)的形式(例如:name=“buddha”)存储在环境变量配置文件中,随着系统启动用户登录加载到进程中,该进程及子进程都可以使用该全局变量,这称为环境变量。可以用env或printenv命令查看环境变量。

用户环境变量配置文件配置文件加载顺序
root、普通用户/etc/environment1
/etc/profile2
/etc/profile.d/*.sh3
/etc/bashrc4
root~/.bash_profile5
~/.bashrc6
普通用户~/.bash_profile5
~/.bashrc6

**注意:**配置文件中存在同名环境变量,后面的变量会覆盖前面的变量。

1.1 定义环境变量

环境变量就是在全局变量的基础上用export命令导出。通常环境变量应该大写。

语法:

export 变量名=变量值

示例:

export MYNAME="buddha"

1.2 使用环境变量

语法:

$变量名${变量名}

示例:

echo $MYNAMEecho ${MYNAME}helloworld

2. 环境变量作用

以PATH环境变量为例

2.1 PATH

记录了系统执行任何命令的搜索路径

[root@hecs-141089 ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

路径之间以:隔开,path变量里记录了以下搜索路径:

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

命令本质上是一个有可执行权限(x)的普通文件

[root@hecs-141089 ~]# which pwd
/usr/bin/pwd
[root@hecs-141089 ~]# ll /usr/bin | grep pwd
-rwxr-xr-x  1 root root   38280 Jul 14  2021 pwd
-rwxr-xr-x  1 root root   12992 Feb  2  2021 pwdx

普通文件的执行,需要定位到该文件才能够执行

[root@hecs-141089 ~]# /usr/bin/pwd
/root

但是为什么pwd命令没有用相对路径或绝对路径定位pwd就可以在任意目录去执行呢?

[root@hecs-141089 ~]# pwd
/root
[root@hecs-141089 home]# pwd
/home
[root@hecs-141089 profile.d]# /usr/bin/pwd
/etc/profile.d

那是因为执行任何命令的时候,都会从path环境变量所记录的搜索路径中按顺序查找有可执行权限的pwd文件,找到了就拼上路径执行该文件。

/usr/local/sbin
/usr/local/bin
/usr/sbin
# /user/bin + /pwd
/usr/bin/pwd
/root/bin

所以安装的程序可执行普通文件(命令),需要在PATH环境变量里。或者修改PATH环境里搜索路径。

**备注:**命令本质是一个有可执行权限的普通文件,把命令文件全路径补齐,一样哪里都可以执行。例如:/usr/bin/pwd

3. 设置环境变量

3.1 设置系统级环境变量

系统级环境变量,作用域是整个系统

# /etc/profile.d/{文件名.sh} 新建并打开配置文件
vim /etc/profile.d/python.sh# 文件末尾加变量定义
export MYNAME="buddha"# 重载配置文件
source /etc/profile.d/python.sh# 终端使用变量
echo $MYNAME

3.2 设置用户级环境变量

用户级环境变量,作用域是当前用户

# 打开配置文件
vim ~/.bash_profile# 文件末尾加变量定义
export MYNAME="buddha"# 重载配置文件
source ~/.bash_profile# 终端使用变量
echo $MYNAME

3.3 设置临时环境变量

临时环境变量,作用域只在当前shell会话窗口

# 定义变量
export MYNAME="buddha"# 使用变量
echo $MYNAME

更多推荐

Linux系统环境变量

本文发布于:2023-11-15 18:51:16,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1604495.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:环境变量   系统   Linux

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!