![Bash 局部变量](https://linux22.com/image/1326050/Bash%20%E5%B1%80%E9%83%A8%E5%8F%98%E9%87%8F.png)
如何声明函数的局部变量?定期声明的变量会导出到全局范围。示例:
$ cat t.sh
function locals_test()
{
x="bar"
}
$ echo $x
$ locals_test
$ echo $x
bar
答案1
使用local
:
local x=bar
然后,x
将是函数的本地变量。要声明数组或数字等,local
请使用与 相同的选项declare
。输出将是两行空行:
#!/bin/bash
function locals_test()
{
local x=bar
}
echo $x
locals_test
echo $x