在C语言中,我可以在这样的函数中定义一个静态变量
int func() { static int var=0 ..... }
在shell bash linux中有什么等效的东西吗?
是否可以将bash shell函数的局部变量定义为静态变量?
有了bash
您,您就无法真正获得它(我想您希望在外壳的多个实例之间共享一些变量...)。但是,如果您切换到鱼贝(使用chsh
改变你的登录shell),你得到所谓的通用变量,拟合样-的法案。另请参阅此答案的相关问题。
顺便说一句,您应该阅读高级bash脚本指南,并考虑使用bash
函数(而不是脚本)。
如果您只想在同一个 shell进程中的多个shell函数之间共享变量,则不local
要将其声明给函数!