C 加载shell脚本的函数而不执行它

C 加载shell脚本的函数而不执行它,c,linux,shell,C,Linux,Shell,我有一个shell脚本,它可以完成一些功能,如制作图像、下载tar文件、导出环境变量、下载图像……n任务等。我为每个任务都有单独的功能。如果我源代码shell脚本,它将开始逐个运行函数。有没有一种方法可以使这些函数在不执行的情况下对shell可用。 寻找shell脚本将使该函数对shell可用,但它将开始执行它 实际代码: do_task1(); #some logging here #shell commands do_task2();

我有一个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风格的编码ie来拥有调用其他函数的主函数。每当我想在没有exec的shell中单独使用函数时,我就可以单独对主调用进行注释。现在我没有主功能

  function main()
  {
   do_task1();
    #add all the commands and functions here.
   do_task2();
  }
main # I can comment this.
是否有其他方法(或某些shell命令)单独加载函数

为什么我需要这个? 这将有助于调试。 如果我想运行这个shell脚本的一些函数,我可以直接运行它。

大多数shell(如和)都支持函数。您可以定义函数并任意调用它们。使用函数定义寻源文件将不会执行它们