我有一个 shell 脚本,它执行一些功能,如制作图像、下载 tar 文件、导出环境变量、下载图像 ...n 任务等。每个任务都有单独的功能。如果我获取 shell 脚本,它将开始一个一个地运行函数。有没有办法让shell可以使用这些函数而不执行它。获取 shell 脚本将使该函数可用于 shell,但它将开始执行它。
实际代码:
do_task1();
#some logging here
#shell commands
do_task2();
#error checks
#....
# there are lot of such things as well as user defined functions.
由于存在对函数的调用,因此获取此文件实际上将开始执行此文件。我希望单独的用户定义函数在 shell 提示符下可用。
一种方法是使用 C 风格的编码,即拥有将调用其他函数的 main 函数。每当我希望单独的函数在没有 exec 的情况下在 shell 中可用时,我就可以单独评论该 main 调用。现在我没有主要功能。
function main()
{
do_task1();
#add all the commands and functions here.
do_task2();
}
main # I can comment this.
有没有其他方法(或一些 shell 命令)来单独加载函数?
为什么我需要这个?这对调试很有用。如果我想运行这个 shell 脚本的一些功能,我可以运行它。