直接在bash上使用shell脚本函数

直接在bash上使用shell脚本函数

我有一个实用的 shell 脚本,里面充满了好东西,并希望将它们带到 bash 环境中。我source之前使用该命令类似于其他语言importinclude在其他语言中使用该命令。

printer.sh

#!/bin/bash

printAwesome () {
    echo "Awesome!"
}

printMoo () {
    echo "Moo!"
}

source printer.sh我认为它只是在终端上运行命令。是不是真的?我们还有其他程序要遵循吗?

在Python中,我们有我们activatedeactivate.

答案1

如果我正确理解您想要实现的目标,那么加载您的文件source是不够的。如果您希望用作printer.sh模块,则需要export每个函数的名称,该名称应在脚本外部可用。所以printer.sh应该看起来像这样:

#!/bin/bash

printAwesome () {
    echo "Awesome!"
}

printMoo () {
    echo "Moo!"
}

export -f printAwesome
export -f printMoo

然后你可以在中写这样的东西myscript.sh

#!/bin/bash

source printer.sh
echo "Let's run these functions ..."
printAwesome
printMoo
echo "Hey, that works now!"

相关内容