前进的声明在bash中?
bash
是否存在这样的事情,或者至less是类似于前向声明(例如在C/C++
已知的)类似的东西(解决方法)?
或者有这样的事情,因为它总是一次执行?
如果没有前向声明,我该怎么做才能让我的脚本更容易阅读(这是相当长的,开始时这些函数定义,与全局variables混合在一起,使我的脚本看起来非常非常难看,难以理解) ? 我正在寻求一些这样的案例的知名/最佳做法。
例如:
# something like forward declaration function func # execution of the function func # definition of func function func { echo 123 }
伟大的问题。 我在大部分脚本中都使用这样的模式:
#!/bin/bash main() { foo bar baz } foo() { } bar() { } baz() { } main "$@"
你可以从上到下读取代码,但是直到最后一行才会开始执行。 通过将"$@"
传递给main(),您可以像往常一样访问命令行参数$1
, $2
等。
当我的bash脚本增长太多,我使用一个包含机制:
文件allMyFunctions
:
foo() { } bar() { } baz() { }
文件main
:
#!/bin/bash . allMyfunctions foo bar baz