linux shell脚本被包含是什么意思?.命令和source命令(在脚本中运行脚本,脚本中调用脚本)(脚本包含,父子脚本)
Posted Dontla
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux shell脚本被包含是什么意思?.命令和source命令(在脚本中运行脚本,脚本中调用脚本)(脚本包含,父子脚本)相关的知识,希望对你有一定的参考价值。
在 shell 编程中,当一个 shell 脚本被另一个 shell 脚本包含,即用 .
或 source
命令包含,则被包含的脚本在当前 shell 进程内执行,并且可以访问当前 shell 进程的环境变量和函数。
此时,$0
代表的是主脚本的名称,而 $BASH_SOURCE
数组则包含了当前脚本的名称和被包含的脚本的名称。
因此,$(dirname "$BASH_SOURCE[0]")
用来获取当前脚本(包括被包含的脚本)所在目录的路径。
示例1:用.
命令包含脚本运行
helper.sh
# helper.sh
function greet()
echo "Hello, $1"
# main.sh
. ./helper.sh
greet "User"
运行main.sh时,将输出:
Hello, User
用source命令包含脚本运行
# helper.sh
function greet()
echo "Hello, $1"
# main.sh
source ./helper.sh
greet "User"
运行main.sh时,也将输出:
Hello, User
以上是关于linux shell脚本被包含是什么意思?.命令和source命令(在脚本中运行脚本,脚本中调用脚本)(脚本包含,父子脚本)的主要内容,如果未能解决你的问题,请参考以下文章