Linux指令 - source

发布时间 2023-07-18 16:23:11作者: 球球小世界

source命令是一个内置的shell命令, 用于从当前shell会话中的文件读取和执行命令。 source命令通常用于保留, 更改当前shell中的环境变量。 

1. source命令的语法

source FILENAME [ARGUMENTS]

2. 如何使用source命令

  • 刷新当前的shell环境
  • 在当前环境使用source执行shell脚本
  • 从脚本中导入环境中一个shell函数
  • 从另一个shell脚本中读取变量
  • 读取并执行命令

3. source filename与 sh filename 及 ./filename 执行脚本的区别

  • 当shell脚本具有可执行权限时, 用sh filename 与 ./filename 执行脚本是没有区别的。./filename是因为当前目录没有在PATH中。 
  • sh filename 重新建立一个子shell, 在子shell中执行脚本里面的语句,该子shell继承父shell的环境变量, 但子shell新建的, 改变的变量不会被带回父shell, 除非使用export
  • source filename 这个命令其实只是简单地读取脚本里面的语句依次在当前shell里面执行, 没有建立新的子shell。 那么脚本里面所有新建, 改变变量的语句都会保存在当前shell里面。