【发布时间】:2016-05-19 23:08:02
【问题描述】:
如何使用命令后定义的变量或函数。
变量
#!/bin/bash
echo Hello "$who"
who="World"
功能
#!/bin/bash
function_name
function_name() {
echo Hello World
}
我还听说有一个命令可以在执行任何命令之前读取整个 bash 脚本,这适用于我的情况。不过如果有更精准的方法就好了。
更深入
#!/bin/bash
h=Hello
echo $h "$who"
var1=World
who=$(cat <<HEREDOC
You
Me
$var1
HEREDOC
)
【问题讨论】:
-
您不能像在 C 中那样在定义之前声明和使用函数。您为什么要这样做?您是否只想在脚本末尾定义函数/变量以提高可读性?
-
@thatotherguy 你是对的,我在脚本中有一个heredoc,希望它位于命令下方。
-
我不关注。您是否有一个包含变量的此处文档,并且您希望进一步定义变量?你可以只使用函数,比如
main() { echo "Hello $who"; }; ...; who="world"; main吗? -
@thatotherguy 你又是对的,我希望这里的文档中有变量,并且通常只是在命令的底部以提高可读性。命令和此处的文档都很大......还要注意,我在命令之前确实有变量,我不想指向外部文档。
-
可以使用我建议的方法吗?没有办法绕过这样一个事实,即您必须在使用函数/变量之前对其进行定义,但您可以通过这些方式控制流程
标签: linux bash function variables