Shell中函数的两种变量
这里的两种变量是针对于函数来讲的,非脚本。
(1) 全局变量
在函数内部定义的变量
特点:
脚本中主代码可以获取。
注意!!!:
脚本中(函数外部)定义的变量,在本脚本的函数内也可获取。
提示:
脚本中(函数外部)定义的变量,对于此脚本来说是局部变量。
(2) 局部变量
local 变量名
仅在函数内使用,函数外部获取不到。
案例:
#!/bin/bash
#shell中函数的全局变量和局部变量
#auth:odysee
#定义脚本主代码变量
name=odysee
#定义函数
print1()
{
#定义函数中的全局变量,脚本主代码可以获取
sno=20144550
#定义函数中的局部变量,脚本主代码获取不到
local class=2
#获取脚本主代码变量
echo "${name} === name"
}
#调用函数
print1
#获取函数中的全局变量
echo "${sno} === sno"
#获取函数中的局部变量,看是否打印
echo "${class} === class"
执行脚本
[odysee@kingdom shellFiles]$ bash function_1.sh
//函数内获取脚本变量
odysee === name
//函数外部可以获取函数全局变量
20144550 === sno
//这里是获取不到函数内的局部变量
=== class
测试完成
欢迎大家给予宝贵的意见或者建议。
欢迎大家补充或者共享一些其他的方法。
感谢支持。