Linux环境变量PATH

在Linux系统中,直接输入命令如ls而没有指定命令的绝对路径/usr/bin/ls,系统也能正确的执行,这是因为 环境变量 PATH 的作用,它指定系统在执行命令时搜索可执行文件的路径。

本文主要介绍在 CentOS 7.x 中关于环境变量 PATH 的说明与配置

环境变量 PATH

当用户在终端输入一个命令时,系统会在 PATH 指定的路径中查找该命令的可执行文件。如果找到了,就会执行该命令;如果没有找到,则会提示"命令不存在"的错误信息。

查看环境变量 PATH

bash 复制代码
# 输入命令
echo $PATH

# 可能返回以下内容
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

PATH(大写)环境变量 是一个由冒号分隔目录列表 ,每个目录有顺序之分。当用户在命令行输入一个命令时,系统会按照这个列表的顺序去查找这个命令的可执行文件。

例如 PATH 的值是 /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin,那么 系统会首先在 /usr/local/sbin 目录下查找命令,如果没找到,再到 /usr/local/bin 目录下查找,以此类推。

修改环境变量 PATH

bash 复制代码
# 输入命令
vim ~/.bash_profile

# 文件末尾添加export PATH=$PATH:/自定义目录路径,以下为示例
export PATH=$PATH:/home/mybin

# 使环境变量生效
source ~/.bash_profile

# 查看环境变量
echo $PATH

# 可能返回以下内容,新加的目录已生效
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/root/bin:/home/mybin

注意事项

  1. 不同身份的用户默认环境变量 PATH 不同
  2. 环境变量 PATH 是可以被修改的
  3. 在不确定的情况下,使用绝对路径来指定某个命令更为准确
  4. 在添加自定义目录前,先检查该目录下是否存在与系统命令同名的可执行文件,以免发生冲突,导致系统命令被覆盖或无法正常工作。
  5. 谨慎添加不受信任的目录到环境变量 PATH 中,特别是具有系统级权限的目录,这可能会导致恶意软件被执行或系统安全受到威胁。
相关推荐
LH_R1 天前
OneTerm开源堡垒机实战(四):访问授权与安全管控
运维·后端·安全
用户31187945592181 天前
Kylin Linux 10 安装 glib2-devel-2.62.5-7.ky10.x86_64.rpm 方法(附安装包)
linux
Raymond运维1 天前
MariaDB源码编译安装(二)
运维·数据库·mariadb
涛啊涛1 天前
Centos7非LVM根分区容量不足后扩容,对调硬盘挂载/
linux·磁盘管理
JuiceFS2 天前
从 MLPerf Storage v2.0 看 AI 训练中的存储性能与扩展能力
运维·后端
CYRUS_STUDIO2 天前
用 Frida 控制 Android 线程:kill 命令、挂起与恢复全解析
android·linux·逆向
熊猫李2 天前
rootfs-根文件系统详解
linux
chen9452 天前
mysql 3节点mgr集群部署
运维·后端
LH_R2 天前
OneTerm开源堡垒机实战(三):功能扩展与效率提升
运维·后端·安全
dessler2 天前
Hadoop HDFS-高可用集群部署
linux·运维·hdfs