通常包含脚本的方法是使用"source"关键字。
例如:
main.sh:
#!/bin/bash
source incl.sh
echo "The main script"
incl.sh:
echo "The included script"
执行"./main.sh"的输出为:The included script
The main script
现在,如果您尝试从另一个位置执行该shell脚本,则它无法找到包含文件,除非它在您的路径中。
有什么好的方法可以确保您的脚本能够找到包含的脚本,特别是如果例如该脚本需要是可移植的吗?
SCRIPT_DIRECTORY
路径的答案,因此您可以使用它来相对于当前脚本导入其他脚本(通过source
或.
):如何从脚本内部获取Bash脚本的源目录?。(我的答案在那里排名很低,有了这个链接,您也可以节省一些滚动时间 :))。我的答案可以被认为是这里接受的答案的一个变体。 - Gabriel Staples