如何使用命令后定义的变量或函数。
可变
#!/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
)
答案 0 :(得分:2)
在使用之前,必须始终定义变量和函数。这是因为函数定义实际上是在当前上下文中分配名称的命令,而不是像C中那样只提供名称的实现。
您可以使用控制流来确保定义在代码之前执行,而不管它们在文件中的相对布局如何:
main() {
echo "Hello $var"
}
var="world"
main