Chinaunix首页 | 论坛 | 博客
  • 博客访问: 4194235
  • 博文数量: 776
  • 博客积分: 13014
  • 博客等级: 上将
  • 技术积分: 10391
  • 用 户 组: 普通用户
  • 注册时间: 2010-02-22 17:00
文章分类

全部博文(776)

文章存档

2015年(55)

2014年(43)

2013年(147)

2012年(20)

2011年(82)

2010年(429)

分类:

2010-02-24 22:23:32

在调用SHELL过程时, 调用者其实是先运行一个子sh环境,该子环境的输入是被调用的SHELL文件. 由于UNIX进程的独立性, 在该子sh环境建立时, 它复制了父sh进程的环境变量.而当它退出时, 它只是简单地终止它自身. 因为父子sh不共用相同的环境, 所以sh提供了一个export命令, 用于把子sh的环境变量值传送给父sh相应的环境变量. 例:
$ cat >; shella
#!/bin/sh
aa = "abc"
^D
$ cat >; shellb
aa = "123"
shella
echo $aa
^D
运行shellb, 屏幕显示:
123
如果在shella的最底行加上一句
export aa
那么shellb的运行结果就是:
abc
阅读(724) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~