1.1 为什么要使用Linux 1
第1章 Linux Shell介绍 1
1.2 Shell的定义和功能 2
1.3 系统启动和登录Shell 5
1.4 Shell和进程 7
1.5 环境与继承 12
1.6 从脚本执行命令 22
第2章 Linux工具箱 31
2.1 正则表达式(regular expression) 31
2.2 正则表达式元字符的组合 37
第3章 grep家族 43
3.1 grep命令 43
3.2 扩展grep(grep-E或者egrep) 53
3.5 grep与管道 59
3.3 固定grep(grep-F或者fgrep) 59
3.4 递归grep(rgrep) 59
3.6 grep与选项 60
第4章 流线式编辑器——sed 71
4.1 什么是sed 71
4.2 sed版本 71
4.3 sed怎样工作? 72
4.4 定址 72
4.5 命令和选项 72
4.6 错误信息和退出状态 74
4.7 sed实例 76
4.8 sed脚本 89
5.1 什么是awk,什么是nawk,什么是gawk? 95
第5章 gawk实用程序:Linux工具——gawk 95
5.2 awk的格式 96
5.3 格式输出 100
5.4 文件中的awk命令 103
5.5 记录和域 104
5.6 模式与动作 108
5.7 正则表达式 109
5.8 脚本文件中的awk命令 112
5.9 复习 113
第6章 gawk功能:给表达式赋值 123
6.1 比较表达式 123
6.2 复习 127
7.1 变量 137
第7章 gawk功能:gawk编程 137
7.2 重新定向和管道 141
7.3 管道 143
7.4 关闭文件和管道 144
7.5 回顾 145
7.6 条件语句 156
7.7 循环 158
7.8 程序控制语句 159
7.9 数组 160
7.10 awk内建函数 167
7.11 自定义函数 174
7.12 复习 175
7.13 其他细节 180
7.14 回顾 187
第8章 交互使用bash Shell 195
8.1 介绍 195
8.2 命令行快捷键 217
8.3 变量 242
第9章 bash Shell编程 281
9.1 介绍 281
9.2 读取用户输入 282
9.3 数学计算 285
9.4 位置参量与命令行参数 288
9.5 条件结构和流控制 292
9.6 循环命令 308
9.7 函数 326
9.8 陷阱信号 332
9.9 调式 336
9.10 用getopts处理命令行选项 337
9.11 eval命令与命令行解析 341
9.12 bash选项 342
9.13 Shell内建命令 346
第10章 交互式TC Shell 355
10.1 简介 355
10.2 TC Shell环境 357
10.3 命令行快捷方式 366
10.4 作业控制 389
10.5 元字符 393
10.6 重新定向和管道 397
10.7 变量 404
10.8 数组 411
10.9 特殊变量和操作符 413
10.10 命令替换 416
10.11 引用 418
10.12 内建命令 424
第11章 用TC Shell编程 439
11.1 创建Shell脚本的步骤 439
11.2 读取用户输入 441
11.3 计算 443
11.4 调试脚本 444
11.5 命令行参数 447
11.6 流程控制和条件语句 448
11.7 循环 464
11.8 中断处理/操作 471
11.9 setuid脚本 472
11.10 储存脚本 472
11.11 内置命令 473
附录A Shell程序员的实用工具 479
附录B Shell比较 521
B.1 tcsh与csh 521
B.2 bash与sh 522
附录C 正确使用引用的步骤 527
C.1 反斜线(参考表C.1) 527
C.2 单引号(参考表C.1) 527
C.3 双引号(参考表C.2) 527
C.4 联合引用 528
C.5 例子 529