Unix + OS books

     
<br>
国外计算机科学经典教材•unix原理与应用(第4版)
http://www.tupwk.com.cn/cata/viewbook.asp?id=1655
http://www.ebookcn.com/book/146132#download
          [b][/b]
<img class="imgs" src="http://www.tupwk.com.cn/bookimgs%5c978-7-302-16690-0.jpg" border="0" alt="点击放大" height="150">                                     <span style="color: #990000;"> 定价:¥78.00</span><span style="color: #990000;"><br></span>
责任编辑:王  军  王  婷<br>装帧设计:孔祥丰<br>责任校对:成凤进<br>责任印制: <br>出版发行:清华大学出版社                   地    址:北京清华大学学研大厦a座  <br>         &amp;nbsphttp://www.tup.com.cn            邮    编:100084<br>         &amp;[email protected]<br>          社 总 机:010-62770175           邮购热线:010-62786544<br>          投稿咨询:010-62772015           客户服务:010-62776969<br>印 刷 者: <br>装 订 者:<br>经    销:全国新华书店<br>开    本:185×260    印   张:41.5    字   数:1016千字<br>版    次:2008年1月第1版     印   次:2008年1月第1次印刷<br>印    数:1~4000<br>定    价:78.00元
 
 
<span style="color: #ff6600;"> 目    录<br></span><br><br>第ⅰ部分  初  级  篇<br>第1章  入门    3<br>1.1  什么是操作系统    4<br>1.2  unix操作系统    5<br>1.3  了解自己的机器    5<br>1.4  一个简单的会话过程    7<br>1.4.1  用账号和口令登录    7<br>1.4.2  命令    9<br>1.4.3  显示日期和时间的命令date    9<br>1.4.4  两个重要的事实    10<br>1.4.5  清屏命令——tput    10<br>1.4.6  日历命令——cal    10<br>1.4.7  检查当前用户命令——who    11<br>1.4.8  查看进程命令——ps    12<br>1.4.9  文件列表命令——ls    12<br>1.4.10  把输出重定向到文件    13<br>1.4.11  统计文件的行数<br>命令——wc    13<br>1.4.12  命令之间的导向作用    14<br>1.4.13  shell指令的编程特性    14<br>1.4.14  退出命令——exit    14<br>1.5  unix简史    15<br>1.5.1  unix的bsd版    15<br>1.5.2  unix的其他版本    16<br>1.5.3  internet时代    16<br>1.5.4  来自windows的挑战    17<br>1.6  linux与gnu    17<br>1.7  小结    17<br>第2章  unix的体系结构与命令用法    20<br>2.1  unix的系统结构    21<br>2.1.1  任务分工——内核和壳    21<br>2.1.2  文件与进程    22<br>2.1.3  系统调用    23<br>2.2  unix系统的主要特性    23<br>2.2.1  unix是一个多用户系统    23<br>2.2.2  unix是一个多任务系统    24<br>2.2.3  unix系统采用积木构建法    24<br>2.2.4  unix的工具包    25<br>2.2.5  模式匹配    25<br>2.2.6  编程工具    25<br>2.2.7  帮助文档    26<br>2.3  posix和单一unix规范    26<br>2.4  定位命令文件    27<br>2.5  内部命令与外部命令    28<br>2.6  命令格式    28<br>2.6.1  可选项    29<br>2.6.2  文件名参数    30<br>2.6.3  例外情形    30<br>2.7  命令的灵活使用    31<br>2.7.1  组合命令    31<br>2.7.2  命令自动换行与多行命令    31<br>2.7.3  在前一个命令结束之前输入<br>命令    32<br>2.8  浏览在线帮助文档的man<br>命令    32<br>2.9  man文档的组成    34<br>2.9.1  man帮助页的组成    35<br>2.9.2  利用man文档了解man的<br>用法    35<br>2.10  利用man -k、apropos和<br>whatis命令得到的帮助    36<br>2.11  出错时的处理    37<br>2.12  小结    40<br>第3章  通用命令介绍    43<br>3.1  日历命令——cal    44<br>3.2  显示系统日期命令——date    45<br>3.3  回显命令——echo    45<br>3.4  用printf命令取代echo命令    47<br>3.5  计算器命令——bc    48<br>3.6  会话过程记录命令——script    49<br>3.7  电子邮件基础    50<br>3.8  万能的邮件处理<br>工具——mailx    51<br>3.8.1  发送邮件    51<br>3.8.2  接收邮件    52<br>3.8.3  mailx的内部命令    53<br>3.9  口令修改命令passwd    55<br>3.10  查看系统当前用户的<br>命令——who    56<br>3.11  了解系统特性的<br>命令——uname    57<br>3.12  获取终端名称的命令——tty    58<br>3.13  显示和设置终端特性的<br>命令——stty    59<br>3.14  小结    60<br>第4章  文件系统    63<br>4.1  文件    63<br>4.1.1  普通文件    64<br>4.1.2  目录文件    64<br>4.1.3  设备文件    65<br>4.2  文件的命名规则    65<br>4.3  父目录与子目录的关系    66<br>4.4  home变量——主目录    67<br>4.5  显示当前目录命令——pwd    68<br>4.6  改变当前目录命令——cd    68<br>4.7  创建目录命令——mkdir    69<br>4.8  删除目录命令——rmdir    70<br>4.9  绝对路径    71<br>4.10  相对路径    72<br>4.11  目录列表命令——ls    74<br>4.12  unix文件系统    77<br>4.13  小结    78<br>第5章  普通文件    81<br>5.1  显示和创建文件命令——cat    82<br>5.1.1  cat命令的可选项(-v和-n)    82<br>5.1.2  用cat命令创建文件    82<br>5.2  文件复制命令——cp    83<br>5.3  文件删除命令——rm    85<br>5.4  文件重命名命令——mv    86<br>5.5  分页输出命令——more    87<br>5.5.1  导航    88<br>5.5.2  重复参数    89<br>5.5.3  搜索匹配模式    89<br>5.5.4  在管道中使用more命令    89<br>5.6  lp子系统——文件打印命令    90<br>5.6.1  lp命令可选项    90<br>5.6.2  lp子系统的其他命令    91<br>5.7  文件类型识别命令file    92<br>5.8  统计行数、字数和字符数的<br>命令——wc    92<br>5.9  数据的八进制显示命令od    93<br>5.10  文件比较命令cmp    94<br>5.11  查找两个文件相同之处的<br>命令comm    95<br>5.12  文件转换命令diff    96<br>5.13  实现dos与unix文件的<br>转换:dos2unix和unix2dos<br>命令    96<br>5.14  文件压缩与文件归档    98<br>5.15  压缩和解压缩命令:gzip和<br>gunzip    98<br>5.16  归档程序tar    100<br>5.16.1  创建归档文件(-c)    100<br>5.16.2  解压归档文件(-x)    101<br>5.16.3  浏览归档文件的内容(-t)    101<br>5.17  将压缩与归档功能合二为一<br>的命令:zip和unzip    102<br>5.18  小结    103<br><br>第6章  文件的基本属性    106<br>6.1  显示文件属性命令——ls -l    107<br>6.2  用-d可选列出目录的属性    108<br>6.3  文件所有权    109<br>6.4  文件权限    109<br>6.5  改变文件权限<br>命令——chmod    110<br>6.5.1  相对权限设置    111<br>6.5.2  绝对权限设置    112<br>6.5.3  安全隐患    114<br>6.5.4  递归模式的chmod<br>命令(-r)    114<br>6.6  目录权限    115<br>6.7  改变文件的所有权    115<br>改变文件所有权命令——chown    116<br>6.7.2  改变组所有者<br>命令——chgrp    116<br>6.8  小结    117<br>第7章  vi编辑器    120<br>7.1  初识vi编辑器    121<br>7.1.1  重复因子    123<br>7.1.2  .exrc文件    123<br>7.1.3  几个小技巧    123<br>7.2  输入模式——文本输入和<br>文本替换    124<br>7.2.1  插入文本(i和a命令)    124<br>7.2.2  在行首行尾插入文本    125<br>7.2.3  新建一行(o或o命令)    125<br>7.2.4  文本替换(r、s、r和<br>s命令)    126<br>7.3  保存文件和退出ex模式    127<br>7.3.1  保存文件(:w)    128<br>7.3.2  保存和退出命令<br>(:x 和:wq)    128<br>7.3.3  放弃编辑命令(:q)    129<br>7.3.4  保存所选的行    129<br>7.3.5  暂时返回到shell的命令<br>(:sh或[ctrl+z])    130<br>7.3.6  从紧急事故中恢复数据<br>(:recover和:r)    130<br>7.4  导航命令    130<br>7.4.1  移动命令(h、j、k和l)    131<br>7.4.2  单词导航(b、e和w)    131<br>7.4.3  移动行首行尾(0、|和$)    132<br>7.4.4  翻页命令([ctrl+f]、[ctrl+b]、<br>[ctrl+d]和[ctrl+u]    132<br>7.4.5  绝对移动命令    133<br>7.5  编辑文本    133<br>7.5.1  删除文本(x和dd)    134<br>7.5.2  移动文本(p)    135<br>7.5.3  复制文本(y和p)    135<br>7.5.4  行合并命令(j)    135<br>7.6  撤消最近一次的编辑操作<br>(u和u)    136<br>7.7  重复上次操作(.)    136<br>7.8  模式搜索(/和?)    137<br>7.9  替换命令(:s)    139<br>7.10  小结    140<br>第8章  shell    143<br>8.1  shell的命令解释过程    144<br>8.2  shell的类型    145<br>8.3  模式匹配——通配符    145<br>8.3.1  *和?通配符    146<br>8.3.2  匹配“."    147<br>8.3.3  字符类    147<br>8.3.4  无规律的匹配模式    148<br>8.3.5  总结    149<br>8.4  转义和引用    149<br>8.4.1  转义机制    150<br>8.4.2  引用    151<br>8.4.3  echo命令中的转义字符    152<br>8.5  重定向符与三个标准文件    152<br>8.5.1  标准输入    153<br>8.5.2  标准输出    154<br>8.5.3  标准错误    155<br><br>8.5.4  连接标准输出和标准输入<br>的过滤器    157<br>8.6  两个特殊文件:/dev/null和<br>/dev/tty    158<br>8.7  管道符    159<br>8.8  分叉符命令tee    162<br>8.9  命令替换    163<br>8.10  shell变量    164<br>8.10.1  引号和转义的作用    165<br>8.10.2  什么情形下使用shell<br>变量    166<br>8.11  小结    167<br>第9章  进程    171<br>9.1  进程的基本概念    172<br>9.1.1  shell进程    172<br>9.1.2  父进程与子进程    173<br>9.1.3  父进程等待或不等待子<br>进程的死亡    173<br>9.2  显示进程状态命令ps    173<br>9.3  系统进程(–e或–a)    176<br>9.4  进程创建的机制    177<br>9.5  内部命令和外部命令    179<br>9.6  进程状态和僵尸状态    179<br>9.7  在后台运行作业    180<br>9.7.1  后台运行命令——&amp;    180<br>9.7.2  nohup命令    180<br>9.8  降低优先级命令——nice    181<br>9.9  用信号方式终止进程    182<br>9.10  作业控制    183<br>9.11  在将来某个时刻运行——at<br>和batch命令    185<br>9.11.1  一次性自动执行<br>命令——at    185<br>9.11.2  批处理命令batch    186<br>9.12  周期性执行作业的<br>命令——cron    186<br>9.13  查看进程运行时间的<br>命令——time    188<br>9.14  小结    188<br>第10章  环境设置    191<br>10.1  shell的演变    192<br>10.2  环境变量    192<br>10.3  常用的环境变量    193<br>10.4  别名(bash和korn shell)    197<br>10.5  命令的历史记录(bash <br>和ksh)    198<br>10.5.1  根据事件代号访问历史<br>命令(!和r)    199<br>10.5.2  根据上下文执行历史<br>命令    200<br>10.5.3  在先前的命令中执行<br>替换    200<br>10.5.4  使用前面命令的最后<br>一个参数($_)    200<br>10.5.5  历史变量    201<br>10.6  行编辑命令(bash和ksh)    201<br>10.6.1  编辑命令行    201<br>10.6.2  在历史列表中搜索先前<br>的命令    202<br>10.7  其他特性(bash和ksh)    202<br>10.7.1  使用set -o命令    203<br>10.7.2  代字符的替换作用    203<br>10.8  启动脚本    204<br>10.8.1  启动文件(.profile和<br>.bash_profile)    204<br>10.8.2  rc文件(bash和ksh)    205<br>10.9  小结    206<br>第11章  文件的其他属性    209<br>11.1  文件系统与文件的inode<br>结点    210<br>11.2  硬链接    211<br>11.2.1  建立硬链接——ln命令    212<br>11.2.2  硬链接的应用    212<br>11.3  符号连接和ln命令    213<br>11.4  目录    214<br><br>11.4.1  读权限    215<br>11.4.2  写权限    215<br>11.4.3  执行权限    215<br>11.5  设置文件和目录默认<br>权限——umask命令    216<br>11.6  修改和访问时间    217<br>11.7  定位文件命令find    218<br>11.7.1  查找条件    220<br>11.7.2  find命令的操作符(!,-o<br>和-a)    222<br>11.7.3  动作部分的可选项    222<br>11.8  小结    223<br>第12章  简单的过滤器    226<br>12.1  实例数据库    227<br>12.2  分页命令pr    227<br>12.3  显示文件头命令——head    229<br>12.4  显示文件尾——tail命令    229<br>12.5  垂直截取——cut命令    231<br>12.5.1  按列截取(-c)    231<br>12.5.2  用cut命令截取字段(-f)    231<br>12.6  粘贴——paste命令    232<br>12.7  排序命令sort    234<br>12.8  定位重复行和非重复行<br>命令——uniq    237<br>12.9  字符变换命令tr    239<br>12.10  一个实例——单词统计表    241<br>12.11  小结    242<br>第13章  使用正则表达式的<br>过滤器--grep与sed    244<br>13.1  模式搜索命令grep    245<br>13.2  初探基本正则表达式(bre)    248<br>13.2.1  字符类    249<br>13.2.2  直接前缀符(*)    250<br>13.2.3  点的作用——匹配单个<br>字符    251<br>13.2.4  位置匹配(^和$)    251<br>13.2.5  元字符不起作用的情形    252<br><br>13.3  扩展正则表达式(ere)和<br>grep命令    253<br>13.3.1  +和?    253<br>13.3.2  多模式匹配(|、(和))    254<br>13.4  流编辑命令sed    254<br>13.5  行地址    256<br>13.6  使用多个指令(-e和-f)    257<br>13.7  根据上下文寻址    257<br>13.8  把选取的行写入文件(w)    258<br>13.9  文本编辑    259<br>13.9.1  行插入和修改<br>指令(i、a、c)    259<br>13.9.2  删除行(d)    260<br>13.10  替换操作(s)    260<br>13.11  再识基本正则表达式    263<br>13.11.1  重复模式(&amp;)    263<br>13.11.2  间隔正则表达式    263<br>13.11.3  带标志的正则表达式    264<br>13.12  小结    266<br>第14章  shell程序设计基础    269<br>14.1  shell脚本    270<br>14.2  read命令——脚本的交互式<br>执行    271<br>14.3  使用命令行参数    272<br>14.4  exit命令和命令的退出<br>状态    274<br>14.5  逻辑运算符 &amp;&amp;和| |——有<br>条件执行    275<br>14.6  if条件语句    276<br>14.7  利用test和[ ]符号计算<br>表达式的值    277<br>14.7.1  数值比较    277<br>14.7.2  字符串比较    279<br>14.7.3  文件测试    281<br>14.8  case 条件语句    282<br>14.8.1  匹配多个模式    284<br>14.8.2  在case结构中使用<br>通配符    284<br>14.9  数值计算和字符串处理<br>命令expr    284<br>14.9.1  数值运算    285<br>14.9.2  字符串处理    285<br>14.10  脚本程序的另外一种调用<br>方法——$0    287<br>14.11  while循环结构    288<br>14.11.1  利用while循环等待<br>一个文件    289<br>14.11.2  设置无限循环    290<br>14.12  for循环——作用在列表上<br>的循环    290<br>14.12.1  各种列表    291<br>14.12.2  修改文件的扩展名<br>——basename命令    292<br>14.13  操作位置参数命令:set<br>和shift    293<br>14.13.1  位置参数左移命令<br>shift    294<br>14.13.2  执行命令替换的set--<br>命令    295<br>14.14  here文档(<<)    295<br>14.15  程序中断命令trap    297<br>14.16  用set -x命令调试shell<br>脚本    298<br>14.17  数据验证和数据录入实例    298<br>14.17.1  代码列表搜索程序<br>valcode.sh    298<br>14.17.2  数据录入脚本程序<br>dentry1.sh    299<br>14.18  小结    301<br>第15章  系统管理基础    305<br>15.1  系统管理员的登录身份<br>——root    306<br>15.2  系统管理员的特权    307<br>15.2.1  设置系统日期——date<br>命令    307<br><br>15.2.2  向用户传达消息——wall<br>命令    307<br>15.2.3  设置文件大小的最大值<br>——ulimit命令    308<br>15.2.4  控制用户使用at和cron    308<br>15.3  安全维护    308<br>15.3.1  passwd命令可以修改<br>任何口令    308<br>15.3.2  临时权限suid    309<br>15.3.3  粘着位    310<br>15.4  用户管理    311<br>15.4.1  创建组——groudadd<br>命令    311<br>15.4.2  创建用户——useradd<br>命令    312<br>15.4.3  用户配置文件:/etc/passwd<br>和/etc/shadow    312<br>15.4.4  修改和删除用户——<br>usermod和userdel命令    313<br>15.5  启动和关机过程    313<br>15.6  管理磁盘空间    315<br>15.6.1  报告磁盘可用空间——<br>df命令    315<br>15.6.2  报告磁盘使用情况——<br>df命令    316<br>15.7  设备文件    317<br>15.7.1  块设备和字符设备    318<br>15.7.2  主设备号和次设备号    318<br>15.8  操作软盘设备    319<br>15.8.1  软盘格式化命令——<br>format和fdformat    319<br>15.8.2  磁盘复制命令——dd    320<br>15.8.3  操作dos磁盘    320<br>15.9  备份程序cpio    321<br>15.9.1  备份文件(-o)    322<br>15.9.2  恢复文件(-i)    323<br>15.9.3  显示归档文件里的文件<br>列表(-it)    324<br><br>15.9.4  其他可选项    325<br>15.10  tar命令    325<br>15.10.1  备份文件(-c)    326<br>15.10.2  文件恢复(-x)    327<br>15.10.3  显示归档文件的<br>内容(-t)    328<br>15.10.4  其他可选项    328<br>15.11  小结    329<br>第ⅱ部分  高  级  篇<br>第16章  x window系统    335<br>16.1  x系统基础    336<br>16.2  通用桌面环境    338<br>16.3  启动和退出x系统    339<br>16.4  终端仿真程序    340<br>16.5  剪切和粘贴操作    341<br>16.5.1  使用鼠标按钮    342<br>16.5.2  高级的剪切和粘贴<br>操作:xclipboard    342<br>16.6  远程运行x客户端程序    343<br>16.6.1  显示程序    343<br>16.6.2  使用display变量    343<br>16.6.3  使用-display可选项    344<br>16.7  命令行可选项    344<br>16.7.1  窗口位置和大小<br>(-geometry)    345<br>16.7.2  设置颜色(-fg,-bg和-rv)    345<br>16.7.3  其他可选项    346<br>16.8  一些标准的x客户端程序    346<br>16.8.1  文件管理器dtfile    346<br>16.8.2  时钟模拟器xclock    347<br>16.8.3  计算器xcalc    347<br>16.8.4  邮件通知程序xbiff    348<br>16.8.5  显示系统负荷命令<br>xload    348<br>16.8.6  终止窗口命令xkill    349<br>16.9  启动文件    349<br>16.10  x系统的资源    350<br>16.10.1  装载资源命令<br>——xrdb    350<br>16.10.2  -xrm可选项——使<br>配置文件无效    351<br>16.11  小结    351<br>第17章  网络工具    353<br>17.1  tcp/ip基础    354<br>17.1.1  tcp/ip工作原理    354<br>17.1.2  tcp/ip的特点    354<br>17.1.3  ip地址    355<br>17.1.4  守护进程和端口    355<br>17.2  域名解析    356<br>17.3  tcp/ip应用程序    357<br>17.4  检查网络是否连通——<br>ping命令    358<br>17.5  远程登录命令——telnet    358<br>17.6  文件传输协议ftp    359<br>17.6.1  文件和目录基本操作<br>命令    360<br>17.6.2  传输文件    361<br>17.6.3  匿名ftp登录    362<br>17.7  密码学基础    363<br>17.7.1  对称密钥算法    363<br>17.7.2  非对称密钥算法    364<br>17.8  ssh——安全外壳    364<br>17.8.1  主机认证    365<br>17.8.2  rhosts/shosts认证模式    365<br>17.8.3  用对称算法进行用户<br>认证    366<br>17.8.4  利用ssh代理实现<br>非交互式登录    367<br>17.9  ssh工具    368<br>17.9.1  远程登录和命令的<br>执行——ssh和slogin    369<br>17.9.2  安全的文件传输<br>命令——sftp和scp    369<br>17.10  域名系统(dns)    370<br>17.11  电子邮件服务    373<br>17.12  mime——处理邮件中的<br>二进制附件    374<br>17.13  万维网    375<br>17.13.1  统一资源定位器<br>(url)    376<br>17.13.2  web协议http    377<br>17.13.3  执行外部程序    377<br>17.13.4  网页设计语言<br>——html    378<br>17.13.5  web浏览器    379<br>17.14  web上的多媒体——<br>再论mime协议    379<br>17.15  小结    380<br>第18章  高级过滤器——awk命令    383<br>18.1  awk命令简单的过滤功能    384<br>18.2  把一行拆分成字段    385<br>18.3  printf格式化输出    386<br>18.4  变量和表达式    386<br>18.5  比较运算符    387<br>18.5.1  正则表达式运算符:<br>~和!~    388<br>18.5.2  数值比较    389<br>18.6  数值运算    390<br>18.7  变量    390<br>18.8  -f可选项——把awk程序<br>保存到一个文件里    391<br>18.9  begin段和end段    391<br>18.10  内置变量    392<br>18.11  数组    393<br>18.11.1  关联(哈希)数组    394<br>18.11.2  环境数组<br>environ[ ]    395<br>18.12  函数    395<br>18.13  流程控制——if语句    397<br>18.14  for循环    398<br>18.15  while循环    400<br>18.16  小结    400<br><br>第19章  perl——最重要的文本<br>处理器    403<br>19.1  perl概述    404<br>19.2  chop截尾函数——删除<br>最后一个字符    405<br>19.3  变量与运算符    406<br>19.4  字符串处理函数    407<br>19.5  在命令行中说明文件名    408<br>19.6  默认变量$_    410<br>19.7  当前行号($.)和范围<br>运算符(..)    410<br>19.8  列表与数组    411<br>19.8.1  命令行参数 argv[ ]    413<br>19.8.2  修改数组元素    414<br>19.9  列表循环——foreach    414<br>19.10  split函数——把一行拆分<br>成列表或数组    415<br>19.10.1  拆分到变量里    416<br>19.10.2  拆分到数组里    416<br>19.11  join命令——合并列表    417<br>19.12  dec2bin.pl——把十进制<br>转化为二进制    418<br>19.13  用grep在数组中搜索<br>一个模式    419<br>19.14  关联数组    420<br>19.15  正则表达式与模式替换    422<br>19.15.1  s和tr函数    422<br>19.15.2  识别空白符、数字和<br>单词    424<br>19.15.3  ire和tre用法    424<br>19.15.4  在位编辑文件    425<br>19.16  文件的处理    425<br>19.17  文件属性测试    426<br>19.18  子程序    427<br>19.19  小结    429<br>第20章  vi编辑器的高级功能    433<br>20.1  操作符    433<br><br>20.1.1  删除、移动文本(d、p<br>和p命令)    434<br>20.1.2  文本复制(y命令)    434<br>20.1.3  修改文本(c命令)    435<br>20.1.4  过滤文本(!命令)    435<br>20.2  ex模式——多文件操作    437<br>20.2.1  文件切换    437<br>20.2.2  插入文件和命令执行<br>结果    438<br>20.3  符号缓冲区——保存多个<br>文本段    439<br>20.4  标号缓冲区——取消多个<br>行删除操作    440<br>20.5  输入控制符([ctrl+v])    441<br>20.6  字符搜索    442<br>20.7  标签文本    442<br>20.8  定制vi编辑器    443<br>20.8.1  set命令    443<br>20.8.2  map——建立快捷键<br>映射表    444<br>20.8.3  abbr——定义文本输入<br>缩写符    445<br>20.9  小结    446<br>第21章  高级shell程序设计    449<br>21.1  shell与子shell    450<br>21.2  组运算符——()和{}    450<br>21.3  export命令——导出shell<br>变量    451<br>21.4  在当前shell运行<br>脚本——.命令    452<br>21.5  let运算命令(ksh 和<br>bash)    453<br>21.6  数组(ksh和bash)    454<br>21.7  字符串处理(ksh和bash)    455<br>21.7.1  字符串的长度    455<br>21.7.2  根据模式的匹配结果<br>求子串    456<br><br>21.8  带条件的参数替换    457<br>21.9  流的合并    458<br>21.10  shell函数    459<br>21.10.1  利用系统日期生成<br>一个文件名    460<br>21.10.2  函数返回值    460<br>21.10.3  验证输入日期的<br>有效性    461<br>21.11  eval命令——两次求值    462<br>21.12  exec 语句    464<br>21.13  小结    467<br>第22章  程序开发工具    469<br>22.1  处理多文件c语言应用<br>程序    470<br>22.2  一个多文件应用程序    470<br>22.2.1  编译和连接程序    472<br>22.2.2  保留.o文件的原因    473<br>22.3  make命令——保持程序<br>更新    474<br>22.3.1  删除冗余内容    476<br>22.3.2  make的其他功能:文件<br>清理和备份    476<br>22.3.3  宏    477<br>22.4  ar命令——建立一个库文件<br>(归档文件)    478<br>22.4.1  使用库文件    479<br>22.4.2  用make命令维护<br>库文件    480<br>22.5  静态库和共享库    480<br>22.6  版本控制工具——sccs<br>和rcs    481<br>22.7  一次sccs会话    482<br>22.7.1  admin命令——创建<br>一个sccs文件    483<br>22.7.2  get命令——检出版本    484<br>22.7.3  delta——检入命令    485<br>22.7.4  unget命令——取消<br>修改    486<br>22.8  活动和历史信息    486<br>22.8.1  sact——显示活动状态<br>信息    486<br>22.8.2  prs命令——显示sccs<br>历史记录    487<br>22.9  用sccs继续编辑    487<br>22.9.1  get -r命令改变默认的<br>数字编号    488<br>22.9.2  使用标识关键字    489<br>22.10  修订控制系统(rcs)    489<br>22.10.1  用ci建立一个rcs<br>文件    490<br>22.10.2  co和ci——检出和<br>检入命令    491<br>22.10.3  设置版本号    492<br>22.10.4  rlog命令——查看<br>版本状态    492<br>22.10.5  ident命令——使用<br>标识关键字    493<br>22.11  小结    493<br>第23章  系统程序设计(上)——<br>文件    496<br>23.1  系统调用基础    497<br>23.1.1  系统调用与库函数    497<br>23.1.2  系统调用的执行过程    497<br>23.1.3  原子操作    498<br>23.2  打开和关闭文件    498<br>23.2.1  打开或建立一个<br>文件——open命令    499<br>23.2.2  close系统调用——关闭<br>文件    500<br>23.3  i/o系统调用    501<br>23.3.1  read调用——读取文件    501<br>23.3.2  write调用——写入文件    502<br>23.3.3  ccp.c——文件复制<br>程序    502<br>23.3.4  lseek调用——定位偏移<br>指针    503<br>23.3.5  reverse_read.c——逆序<br>读取文件    504<br>23.3.6  截断文件——truncate和<br>ftruncate    505<br>23.4  带缓冲和不带缓冲的读写<br>操作    506<br>23.5  umask命令——文件创建与<br>权限修改    507<br>23.6  错误处理    508<br>23.6.1  strerror函数    508<br>23.6.2  perror函数    509<br>23.6.3  带错误处理的文件逆序读<br>取程序reverse_read2.c    510<br>23.7  文件共享    512<br>23.7.1  文件描述表    513<br>23.7.2  文件表    513<br>23.7.3  vnode表    514<br>23.8  目录浏览    515<br>23.9  读取目录文件    516<br>23.10  修改目录文件的记录    517<br>23.10.1  建立和删除目录——<br>mkdir和rmdir系统<br>调用    518<br>23.10.2  建立硬连接和符号<br>连接——link和<br>symlink调用    518<br>23.10.3  unlink:删除连接    518<br>23.10.4  rename:重命名文件名、<br>目录名和连接文件名    519<br>23.11  stat——读取inode    519<br>23.11.1  attributes.c显示文件<br>部分属性    520<br>23.11.2  作用于st_mode成员上<br>的s_ifmt屏蔽字    521<br>23.11.3  用s_is系列宏判断<br>文件类型    522<br>23.11.4  lsdir.c——只列出目录    522<br>23.12  查看文件的存取权限    524<br><br>23.12.1  check_all_perm.c——<br>查看12个权限位    524<br>23.12.2  access——查看文件<br>所有者的权限    526<br>23.12.3  suid对文件存取的<br>影响    528<br>23.13  修改文件属性    529<br>23.13.1  chmod和fchmod——<br>修改文件权限    529<br>23.13.2  chown——修改文件<br>所有权    530<br>23.13.3  utime——修改文件的<br>时间戳    530<br>23.13.4  atimetime.c——创建具<br>有相同时间戳的文件    531<br>23.14  小结    532<br>第24章  系统程序设计(下)——进程<br>控制    536<br>24.1  进程的几个抽象概念    537<br>24.1.1  虚拟地址空间    537<br>24.1.2  进程表    538<br>24.2  process.c程序——查看进程<br>的权限    539<br>24.3  创建一个进程    540<br>24.3.1  fork系统调用——复制<br>当前进程    540<br>24.3.2  fork.c——一个简单的<br>子进程创建程序    540<br>24.3.3  getenv和setenv——使用<br>环境变量    542<br>24.3.4  childenv.c——传递环境    542<br>24.4  _exit和exit——终止进程    544<br>24.5  等待状态——读取子进程的<br>退出状态值    545<br>24.5.1  wait——等待子进程<br>死亡    545<br>24.5.2  wait.c——说明wait和<br>wexistatus的用法    545<br>24.5.3  waitpid——一个功能<br>更强大的等待机制    546<br>24.6  进程组    547<br>24.7  僵尸进程和孤儿进程    548<br>24.8  exec——进程创建中的最后<br>一个步骤    549<br>24.8.1  execl--"l”系列中最<br>重要函数    549<br>24.8.2  execv--v组中最重要<br>的函数    551<br>24.8.3  exec_and_fork.c——在<br>子进程执行exec    551<br>24.8.4  l家族和v家族的其他<br>成员    552<br>24.9  shell.c——一个类似于<br>shell的程序    553<br>24.10  文件描述符的使用    555<br>24.10.1  dup——复制文件<br>描述符    556<br>24.10.2  dup2——复制描述符<br>的一种更好方法    557<br>24.10.3  fcntl——比dup和<br>dup2更好的函数    558<br>24.11  pipe系统调用——进程<br>之间的通信    559<br>24.11.1  pipe与fork一起使用    560<br>24.11.2  pipe2.c——管道中运行<br>unix命令    561<br>24.12  信号机制    562<br>24.12.1  信号处理    562<br>24.12.2  内核处理信号的过程    563<br>24.12.3  与信号有关的系统<br>调用    564<br>24.13  signal调用——设置信号<br>处理程序    564<br>24.13.1  响应sigalrm信号    565<br>24.13.2  为什么signal调用不<br>可靠    566<br><br>24.13.3  捕获来自键盘终端<br>的信号    567<br>24.14  killprocess.c——用kill产生<br>信号    568<br>24.15  小结    570<br>第25章  高级系统管理    573<br>25.1  安全措施    574<br>25.1.1  口令老化机制    574<br>25.1.2  受限的shell    574<br>25.1.3  只允许一个用户关机    575<br>25.2  分区与文件系统    575<br>25.2.1  引导块    576<br>25.2.2  超级块    576<br>25.2.3  inode块    577<br>25.2.4  数据块    577<br>25.3  常用的文件系统和类型    578<br>25.4  fdisk——建立分区    579<br>25.5  mkfs——创建文件系统    580<br>25.6  加载和卸载文件系统    581<br>25.6.1  用mount加载文件<br>系统    581<br>25.6.2  umount——卸载文件<br>系统    582<br>25.6.3  /etc/fstab文件——配置<br>mount命令    582<br>25.6.4  mount的可选项    583<br>25.7  用fsck命令检查文件系统    584<br>25.8  系统启动和init命令    585<br>25.8.1  init命令——控制<br>运行级    586<br>25.8.2  使用/etc/inittab文件    586<br>25.8.3  init和getty    587<br>25.8.4  rc脚本程序    588<br>25.9  关机操作和sync操作    589<br>25.10  备份    590<br>25.10.1  用find命令进行增量<br>备份(-newer)    590<br>25.10.2  用find命令备份文件<br>系统    590<br>25.10.3  xargs——建立动态<br>命令行    591<br>25.10.4  保存备份文件的列表    591<br>25.11  小结    592<br>附录a  c shell的结构    594<br>附录b  vi/vim命令手册    601<br>附录c  命令反查表    609<br>附录d  测试题答案    614<br><br><br>??<br><br>unix原理与应用(第4版)<br><br>目    录         <br><br>xii<br><br><br>xix<br><br><br><br><br><br><br>
 
end
 

猜你喜欢

转载自lucene3212.iteye.com/blog/1144419
今日推荐