绝技二"环境定盘"-Day34|定盘初识:什么是环境变量,PATH 是什么

14 次阅读 2026-10-28 11:18

📖 知识点

1. Windows 环境变量 → Linux 环境变量

 

 

WindowsLinux说明
系统属性→环境变量

echo $变量名

查看环境变量
PATH

PATH

命令去哪找

环境变量:系统保存的 "全局设定",格式是 变量名=值。比如 USER(当前用户名)、HOME(家目录)、PATH(命令查找路径)。很多程序靠它们知道 "我是谁、家在哪、去哪找东西"。

💡 生活比喻环境变量像学校门口的信息栏:写着 "校长是谁(USER)、教室在哪(HOME)、去哪领教材(PATH)"。程序一启动先看这块信息栏,才知道怎么干活。

2. 查看环境变量:echo $

 

echo $变量名      # 查看某个环境变量
env              # 列出所有环境变量

 

echo $USER        # 当前用户名
echo $HOME        # 家目录
echo $PATH        # 命令查找路径

 

3. 重点:PATH 是什么?

PATH 是 "命令查找路径":当你敲一个命令(如 ls),系统会按 PATH 里列出的目录挨个去找这个命令在哪。

 

echo $PATH

 

运行示例:

 

/usr/local/bin:/usr/bin:/bin:/usr/games

 

冒号 : 分隔多个目录。敲 ls 时,系统依次去 /usr/local/bin、/usr/bin… 找 ls 这个程序,找到就执行。

💡 生活比喻PATH 像 "外卖员送餐路线清单":你点单(敲命令),外卖员(shell)按清单上的街道(PATH 里的目录)一家家找,找到卖这个菜的店(命令)就送到。

4. 用 which 查命令在哪

 

which ls        # 查ls命令在哪个目录
which python3   # 查python3在哪

 

返回该命令的完整路径,帮你理解 PATH 的查找逻辑。

⚠️ 易错提醒

  1. 查看环境变量要用 $ 前缀:echo $PATH,不是 echo PATH

  2. PATH 里多个目录用冒号 : 分隔

  3. 如果某命令不在 PATH 的目录里,直接敲会 "command not found"(Day35 用 export 解决)

⚔️ Kata 实战任务

任务需求:

  1. 用 echo $USER 查看当前用户名

  2. 用 echo $HOME 查看家目录

  3. 用 echo $PATH 查看命令查找路径

  4. 用 env 查看所有环境变量(挑几个认识的)

  5. 用 which ls、which python3 查命令所在位置,理解 PATH

参考代码(在终端依次敲)

 

# 1. 查看用户名
echo $USER

# 2. 查看家目录
echo $HOME

# 3. 查看PATH命令查找路径
echo $PATH

# 4. 查看所有环境变量
env

# 5. 查命令在哪
which ls
which python3

 

运行示例:

user@linux:~$ echo $USER
user

user@linux:~$ echo $HOME
/home/user

user@linux:~$ echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/games

user@linux:~$ env
USER=user
HOME=/home/user
PATH=/usr/local/bin:/usr/bin:/bin:/usr/games
LANG=zh_CN.UTF-8
...

user@linux:~$ which ls
/usr/bin/ls

 

🧠 思考题

  1. 查看环境变量为什么要加 $?echo $HOME 和 echo HOME 输出有什么不同?

  2. PATH 里的多个目录用什么分隔?它决定了系统的什么能力?敲 ls 时系统怎么用 PATH 找到它?