Linux 使用终端调用sh文件时如何调用函数

Linux 使用终端调用sh文件时如何调用函数,linux,bash,function,terminal,sh,Linux,Bash,Function,Terminal,Sh,我在一个名为main.sh的文件中有一个代码: #!/bin/bash function hello() { echo $1 } 我想从命令行这样调用它: main hello teddy 它应该像hello teddy那样输出。 有可能吗?。如果是,请告诉我。 提前感谢这可能取决于您定义函数的位置。有几个文件在启动时运行。例如,.bashrc: 当启动非登录shell的交互式shell时,Bash从~/.bashrc读取并执行命令(如果该文件存在) 因此,如果在.bashrc中定义函数

我在一个名为main.sh的文件中有一个代码:

#!/bin/bash
function hello() {
  echo $1
}
我想从命令行这样调用它:

main hello teddy
它应该像hello teddy那样输出。 有可能吗?。如果是,请告诉我。
提前感谢

这可能取决于您定义函数的位置。有几个文件在启动时运行。例如,
.bashrc

当启动非登录shell的交互式shell时,Bash从~/.bashrc读取并执行命令(如果该文件存在)


因此,如果在
.bashrc
中定义函数,就可以像使用shell显式定义函数一样运行它。

这是否回答了您的问题?