我有两个只存储变量的函数。示例:
Function datanode1(){
homedirectory = "/path/to/file"
ConfigDirectory = "/path/to/file"
user = "john"
max_open_Files = 262114
}
datanode2
完全一样,只是路径文件不同。
我想做这样的事情:
if [ "$a1" == "all" ]; then
for i in [datanode2, datanode1] do
*execute Script*
done
fi
这可能吗?这些函数如何充当数组?
最佳答案
如果你有名为 datanode2
和 datanode1
的函数,并且你想在循环中执行它们,你可以这样写:
for fun in datanode2 datanode1; do
"$fun"
done
顺便说一句,您的示例中的函数定义有一些语法错误。它应该更像这样:
datanode1() {
homedirectory="/path/to/file"
ConfigDirectory="/path/to/file"
user="john"
max_open_Files=262114
}
关于linux - 只有变量的 Bash 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53770339/