局部变量
[donggua@donggua-desktop:~]$ cat vartest
echo :$x:
[donggua@donggua-desktop:~]$ x=50
[donggua@donggua-desktop:~]$ ./vartest
::
[donggua@donggua-desktop:~]$ cat vartest2
x=50
echo :$x:
[donggua@donggua-desktop:~]$ x=100
[donggua@donggua-desktop:~]$ ./vartest2
:50:
导出变量
注:这里的3,4,5是有前后关系的,彼此影响的。
[donggua@donggua-desktop:~]$ cat vartest3
echo x=$x
echo y=$y
[donggua@donggua-desktop:~]$ x=100
[donggua@donggua-desktop:~]$ y=10
[donggua@donggua-desktop:~]$ chmod +x vartest3
[donggua@donggua-desktop:~]$ ./vartest3
x=
y=
[donggua@donggua-desktop:~]$ export y
[donggua@donggua-desktop:~]$ ./vartest3
x=
y=10
[donggua@donggua-desktop:~]$ cat vartest4
x=50
y=5
z=1
export z
./vartest5
[donggua@donggua-desktop:~]$ cat vartest5
echo x=$x
echo y=$y
echo z=$z
[donggua@donggua-desktop:~]$ ./vartest4
x=
y=5
z=1
[donggua@donggua-desktop:~]$ cat cdtest
cd /home/donggua/make
pwd
[donggua@donggua-desktop:~]$ pwd
/home/donggua
[donggua@donggua-desktop:~]$ ./cdtest
/home/donggua/make
[donggua@donggua-desktop:~]$ pwd
/home/donggua
给子shell传递变量的另一方法
[donggua@donggua-desktop:~]$ cat foo1
echo :$x:
./foo2
[donggua@donggua-desktop:~]$ cat foo2
echo :$x:
[donggua@donggua-desktop:~]$ x=100
[donggua@donggua-desktop:~]$ ./foo1
::
::
[donggua@donggua-desktop:~]$ echo :$x:
:100: