发信人:scircle(yuanyuan),信区:Security标题:unix环境中级编程--第1章UNIX基础知识发信站:BBS水木北大站(ThuMar2316:41:472000)11〓引言所有操作系统都向它们运行的程序提供服务。典型的服务是执行一道新程序、打开一个文件、读一个文件、分配一个储存区、获得当前时间等等,本书的焦点是说明各类Unix操作系统版本所提供的服务。以严格的步进形式unix环境高级编程,不超前引用仍未说明过的术语来说明Unix几乎是不可能的(可能也会是令人厌恶的)。本章从程序设计人员的角度快速游历Unix,我们将对书中引用的一些术语和概念进行简略的说明并给示实例。在之后各章中,我们将对那些作更详尽的说明。本章也对不熟悉Unix的程序设计人员介绍、概述Unix提供的各类服务。12〓登录(Loggingln)登陆名当我们向Unix系统登陆时,先键入登陆名,之后键入口令字。系统在其口令文件,一般是/etc/passwd文件中查看我们的登陆名。
在口令文件中的登陆项,由7个以逗号分隔的数组组成:登陆名,加密口令字,数字用户ID(224),数字组ID(20),注释数组,起始目录(/home/stevens),以及shell程序(/bin/ksh)。好多比较新的系统已将加密口令字移到另一个文件中。在第六章,我们将说明这些文件,以及存取它们的函数。shell我们登陆后,系统先典型地显示一些消息,之后我们就可以向shell程序键入命令。shell是一个命令行类库,它读用户输入,之后执行命令unix环境高级编程,用户一般用终端linux软件,有时则通过文件(称为shell脚本)向shell进行输入。常用的shell是:·Bourneshell,/bin/sh·Cshell,/bin/csh·Kornshell,/bin/ksh系统从口令字文件中与我们相关的登陆项的最后一个数组了解到应为我们执行那一个shell。自Version7(第七版)以来,始终在使用Bourneshell,几乎每一个现存的Unix系统都提供Bourneshell。CShell是在Berkeley(贝克莱)开发的深度linux,所有BSD版本都提供此类shell。另