
source 是 Linux 和 Unix 系统中内置的一个 shell 命令,其作用是在当前的 shell 环境下运行指定文件中的命令。不同于常规脚本执行方式,source 不会启动新的子 shell,而是在当前环境中直接执行脚本内容。
可以把 source 想象成一种“复制粘贴”的操作:
source 文件名 [参数]
也可以使用简写形式,用点号(.)代替 source:
. 文件名 [参数]
| 比较项 | source 命令 | 直接运行脚本 | 
|---|---|---|
| 执行环境 | 当前 shell 环境 | 新建一个子 shell 环境 | 
| 变量影响 | 会影响当前 shell 的变量和配置 | 不会影响当前 shell 的设置 | 
| 进程创建 | 不生成新进程 | 会创建新进程 | 
| 退出行为 | 若脚本包含 exit,会关闭当前 shell | 仅关闭子 shell | 
最常用于重新加载配置文件如 ~/.bashrc 或 /etc/profile:
source ~/.bashrc
在开发中启用虚拟环境时经常用到:
source venv/bin/activate
修改了系统配置后无需重新登录即可生效:
source /etc/profile
可以将大型脚本拆分为多个小文件,并通过 source 引入:
先建立测试文件 myenv.sh:
#!/bin/bash
export MY_VAR="Hello World"
alias ll='ls -alF'
然后使用 source 运行该文件:
source myenv.sh
echo $MY_VAR # 输出: Hello World
ll # 相当于执行 ls -alF  
调试过程中,使用 source 可以让脚本内的变量保留在当前环境中:
# 错误:未设置文件读取权限
source ./script.sh # 如果 script.sh 不可读,会报错  
export:只能用来设置环境变量  source:可以执行任意命令,功能更全面eval:用于执行字符串形式的命令  source:从文件中读取并执行命令,来源更清晰安全以上就是linux在当前shell执行脚本是什么- source 命令使用与实例的详细内容,更多请关注php中文网其它相关文章!
 
                        
                        每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
 
                Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号