Chinaunix首页 | 论坛 | 博客
  • 博客访问: 59457
  • 博文数量: 32
  • 博客积分: 1400
  • 博客等级: 上尉
  • 技术积分: 325
  • 用 户 组: 普通用户
  • 注册时间: 2009-10-28 21:50
文章分类

全部博文(32)

文章存档

2011年(1)

2010年(6)

2009年(25)

我的朋友

分类: LINUX

2009-12-19 15:17:07

  • 本章主要内容:编写一个shell为主线,说明了shell中可编程(即脚本)是如何实现,变量如何实现,以及环境。本章的代码实现有很多巧妙之处。
    如果要写shell,应该好好参考本章的代码。

  • Unix shell 运行一种称为脚本的程序。一个shell脚本可以运行程序、接受用户的输入、使用变量和使用复杂的控制逻辑
  • shell脚本中的流程控制,if..then控制语句是属于关键字,是由shell程序进行解析。
  • shell中能运行的有程序,如ls,也有命令,如set,这都是if..then之类的关键字,称为内置命令
  • 环境是不属于shell的,它是开机初始化就有的,环境是每个程序都可以存取的一个字符串数组。环境是environ指向的字符串数组,读环境就是读这个字符串数组。通过使environ指向其他数组可以改变环境。每个shell都可以有自己的环境
  • 当调用exec时,它会把调用程序的代码和数据都替换为目标程序的代码和数据,但是environ指向的数组是属于全局的,不会被替换掉,还能被复制到相应子进程的数据空间
    子程序中的环境设置是父进程环境的副本,子进程不能修改父进程的环境。
  • 本章的命令
    env     列出当前的环境变量
    C库函数:
    getenv  获取环境变量里的字符串
阅读(230) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~