我正在设计一个 bash 脚本,以便按顺序执行一系列功能(例如,安装包、克隆存储库),并在完成后向电子邮件地址发送摘要报告,以表明安装是成功还是失败。
我突然想到一个主意,那就是创建一个关联数组,其中行的第一个元素表示函数调用,第二个元素表示函数生成的任何错误代码。这样,我就可以循环遍历数组来调用所有函数。
就像是-
function foo () {
//do something
return success
}
function bar () {
//do something
return success
}
declare -A arr
arr[0,0]=foo
arr[0,1]=1
arr[1,0]=bar
arr[1,1]=1
function init () {
for i in 0 .. 1 do
error = arr[i,0] //this im not sure about, would this execute foo()?
arr[i,1] = error
}
init
有没有更好的方法可以做到这一点,以便脚本本身可以根据需要轻松修改以添加或删除功能?