Bash 从另一个shell脚本调用函数

Bash 从另一个shell脚本调用函数,bash,shell,Bash,Shell,我已经写了一个脚本,现在我想通过在其他文件中移动我的主脚本的一部分来提高它的可读性,但不幸的是我不能 假设现在我在文件utils.sh中有以下代码: #!/bin/bash sayHello () { echo "Hello World" } 在我的主要脚本中,我尝试了以下方法,但不起作用: #!/bin/bash ./utils.sh sayHello 因此,问题是,如何从utils.sh中调用函数?您必须使用或源代码: ~$ cat >main.sh #!/bin/ba

我已经写了一个脚本,现在我想通过在其他文件中移动我的主脚本的一部分来提高它的可读性,但不幸的是我不能

假设现在我在文件
utils.sh
中有以下代码:

#!/bin/bash

sayHello ()
{
   echo "Hello World"
}
在我的主要脚本中,我尝试了以下方法,但不起作用:

#!/bin/bash

./utils.sh

sayHello

因此,问题是,如何从utils.sh中调用函数?

您必须使用
源代码

~$ cat >main.sh
#!/bin/bash
. ./utils.sh #or source ./utils.sh
sayHello
然后

~$ ./main.sh
Hello World

您的主脚本应该如下所示:

#!/bin/bash

source utils.sh

echo "Main"
sayHello