Nesse cenário, é necessário chamar func1
de Main_Func
. Como faço para chamá-lo?
Main_Func() {
<code>
}
Initialize_func() {
func1() {
<code>
}
}
Nesse cenário, é necessário chamar func1
de Main_Func
. Como faço para chamá-lo?
Main_Func() {
<code>
}
Initialize_func() {
func1() {
<code>
}
}
Para
func1
ser definido, primeiro você terá que ter chamadoInitialize_func
pelo menos uma vez. Então você pode ligarfunc1
como apenasfunc1
.Exemplo:
Chamar
outer1
sem chamarouter2
neste exemplo não funcionará, poisinner
ainda não está definido:Ligando
outer2
primeiro e depoisouter1
funciona:ksh
colocará suafunc1
função no mesmo "escopo" das outras funções. Não é como em C++ ou outras linguagens orientadas a objetos que defunc1
alguma forma se tornam uma subfunção ou método em algum escopo interno doInitialize_func
.Isso ocorre independentemente de você usar a sintaxe de função do shell Bourne como acima ou definir suas funções usando a palavra-
function
chave do shell Korn.