在 Linux 系统中,PATH(全大写)是一个关键的环境变量,用于指定系统在哪些目录中查找可执行文件(命令或程序)。当用户在终端输入命令时,系统会按照 PATH 中定义的目录顺序依次搜索该命令对应的可执行文件。
/usr/bin/ls
),只需输入命令名(如 ls
),系统会自动从 PATH 的目录中查找。echo $PATH
输出示例(以冒号 :
分隔的目录列表):
/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
export PATH=$PATH:/new/directory # 追加新目录
export PATH=/new/directory:$PATH # 优先使用新目录
针对当前用户:编辑 ~/.bashrc
或 ~/.bash_profile
文件,末尾添加:
export PATH=$PATH:/new/directory
然后运行:
source ~/.bashrc # 立即生效
针对所有用户:编辑 /etc/environment
或 /etc/profile
(需管理员权限)。
目录 | 用途 |
---|---|
/bin |
系统基本命令(如 ls , cp ) |
/usr/bin |
用户安装的软件命令 |
/usr/local/bin |
用户手动安装的软件(优先级通常最高) |
/sbin , /usr/sbin |
系统管理命令(需 root 权限) |
.
)或敏感目录加入 PATH,可能引发恶意命令劫持。export PATH=/custom/bin:$PATH
会优先使用 /custom/bin
下的命令。which 命令名
或 whereis 命令名
检查路径。假设你安装了 Python 到 /opt/python/bin
,但直接输入 python
无效,需将其加入 PATH:
export PATH=$PATH:/opt/python/bin
或永久生效:
echo 'export PATH=$PATH:/opt/python/bin' >> ~/.bashrc
source ~/.bashrc
通过合理配置 PATH,可以高效管理系统和自定义命令的访问路径。