sda*_*aau 8 bash goto function
我基本上想给我写一个bash脚本,在那里我使用heredoc生成几个大文件; 然后使用这些文件运行一些命令.
据了解,(显然)heredoc文件需要在命令运行之前生成 - 但是,在这种安排中令我恼火的是,在编写命令代码之前,我还必须编写'heredoc'语句代码.
所以我以为我会在一个函数中编写heredoc语句 - 但这里仍然存在同样的问题:第24章.函数说:
函数定义必须在第一次调用之前.没有"声明"该功能的方法,例如,在C中.
的确如此:
$ cat > test.sh <<EOF
testo
function testo {
echo "a"
}
EOF
$ bash test.sh
test.sh: line 1: testo: command not found
Run Code Online (Sandbox Code Playgroud)
然后我想也许我可以放置一些标签并跳转GOTO
,如(伪代码):
$ cat > test.sh <<EOF
goto :FUNCLABEL
:MAIN
testo
goto :EXIT
:FUNCLABEL
function testo {
echo "a"
}
goto MAIN
:EXIT
Run Code Online (Sandbox Code Playgroud)
...但事实证明BASH goto也不存在.
我唯一的目标是 - 我想首先编写脚本文件的"核心",这是一些五六个命令; 只有然后写在脚本文件中的定界符语句(可能有数百行); 首先拥有heredocs真的让我难以阅读代码.有没有办法实现这一目标?
归档时间: |
|
查看次数: |
14663 次 |
最近记录: |