GLORY | 学习·记录

coding for life

Shell脚本中的局部变量

function afunc
{
    echo 
in fnction: $0 $1 $2
    var1
="in function"
    echo var1: $var1
}

var1
="outside function"
echo var1: $var1
echo $
0: $1 $2
afunc funcarg1 funcarg2
echo var1: $var1
echo $
0: $1 $2

OUTPUT:

./ascript: arg1 arg2
in fnction: ./ascript funcarg1 funcarg2
var1: in function
var1: in function
./ascript: arg1 arg2

说明var1在afunc内部被改变了。shell的局部变量跟c语言有些差别,这里默认所有外部定义的变量,在函数内部可以访问并且可以改变。即外部定义的变量默认为全局变量。
若想在afunc内部定义一个局部变量,则需要显式的加上local var1.

待续

posted on 2011-06-24 18:57 meglory 阅读(967) 评论(0)  编辑 收藏 引用 所属分类: Linux


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   博问   Chat2DB   管理


导航

随笔分类

随笔档案

最新评论