《Unix Shell编程 第3版》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:(美)Stephen G.Kochan,(美)Patrick Wood著;袁科萍等译
  • 出 版 社:北京:中国铁道出版社
  • 出版年份:2004
  • ISBN:7113058213
  • 页数:361 页
图书介绍:本书是Unix Shell编程方面的经典书籍,第3版以Unix Shell的最新标闪POSIX标准Shell为主线,同时指出与其它流行Shell的区别,因此,本书对其他版本Shell的编程也具有重要的借鉴意义。

第1章概述 1

目录 1

第2章基础知识快速回顾 5

2-1 一些基本命令 6

2-1-1 显示时间和日期:date命令 6

2-1-2查看登录系统的用户:who命令 6

2-1-3 显示字符:echo命令 6

2-2文件操作 7

2-2-1列出文件清单:Is命令 7

2-2-4命令选项 8

2-2-显示文件内容:cat命令 8

2-2-3统计文件中的单词数:wc命令 8

2-2-5复制文件:cp命令 9

2-2-6文件重命名:mv命令 9

2-2-7删除文件:rm命令 10

2-3 目录操作 10

2-3-1宿主目录和路径名 11

2-3-显示工作目录:pwd命令 12

2-3-3改变当前工作目录:cd命令 12

2-3-4进一步讨论Is命令 15

2-3-5创建目录:mkdir命令 17

2-3-6在目录之间复制文件 17

2-3-7在目录之间移动文件 18

2-3-8链接文件:In命令 19

2-3-9删除目录:rmdir命令 22

2-4文件名替换 22

2-4-1 星号 22

2-4-2单字符匹配 24

2-5-1标准输入和标准输出 25

2-5标准输入/输出以及输入/输出重定向 25

2-5-2输出重定向 27

2-5-3输入重定向 29

2-6 管道 30

2-7标准错误 32

2-8有关命令的深入讨论 32

2-8-1 一行键入多条命令 32

2-8-2命令发送到后台 33

2-8-3 ps命令 33

2-9 命令小结 34

2-10练习 35

第3章什么是Shell 37

3-1 内核和实用程序 38

3-2 登录Shell 38

3-3向Shell键入命令 41

3-4 Shell的职责 43

3-4-1执行程序 43

3-4-2变量和文件名的替换 44

3-4-3 I/O重定向 45

3-4-6解释型程序设计语言 47

3-4-5环境控制 47

3-4-4管道线连接 47

第4章 工具 49

4-1 正规表达式 50

4-1-1 匹配任何字符:句点(.) 50

4-1-2匹配行首:^符号 51

4-1-3匹配文件尾:美元符号($) 51

4-1-4匹配字符组之一:[…]结构 53

4-1-5匹配零或若干个字符:星号(*) 55

4-1-6匹配精确数目的字符串:\{…\} 57

4-1-7保存匹配的字符串:\(…\) 59

4-2 cut 61

4-3 paste 65

4-3-1-d选项 66

4-3-2-s选项 67

4-4 sed 67

4-4-1 -n选项 69

4-4-2删除行 70

4-5 tr 71

4-5-1 -s选项 73

4-5-2 -d选项 74

4-6 grep 75

4-6-1 grep 与正规表达式 78

4-6-2-v选项 79

4-6-3-1选项 79

4-6-4-n选项 80

4-7 sort 80

4-7-1 -u选项 81

4-7-2 -r选项 81

4-7-3 -o选项 82

4-7-4 -n选项 82

4-7-5跳过字段 83

4-7-6 -t选项 84

4-7-7 其他选项 85

4-8 uniq 85

4-8-1 -d选项 86

4-8-2其他选项 87

4-9练习 88

第5章Shell编程初步 89

5-1 命令文件 90

5-2变量 93

5-2-1 显示变量的值 94

5-2-2空值 96

5-2-3文件名替换和变量 97

5-2-4$(Variable)结构 98

5-3 内部的整数算术运算 98

5-4练习 100

第6章 引用 101

6-1 单引号 102

6-2双引号 105

6-3 反斜杠 107

6-3-2双引号中的反斜杠 108

6-3-1用反斜杠续行 108

6-4 命令替换 109

6-4-1反引号 110

6-4-2$(…)结构 110

6-4-3 expr命令 114

6-5练习 115

第7章参数传递 117

7-1 $#变量 119

7-2$*变量 120

7-3在电话簿中查找某个人的程序 120

7-4 向电话簿中增加某人的程序 122

7-5从电话簿中去掉某个人的程序 123

7-6${n} 124

7-7 shift命令 125

7-8练习 126

第8章 判断 127

8-1退出状态 128

8-1-1 $?变量 128

8-2 test命令 131

8-2-1字符串操作符 131

8-2-2 test的另一种格式 135

8-2-3整数操作符 136

8-2-4文件操作符 137

8-2-5逻辑非操作符! 138

8-2-6逻辑与操作符-a 139

8-2-7小括号 139

8-2-8逻辑或操作符-o 139

8-3 else结构 140

8-4 exit命令 142

8-5 elif结构 143

8-6 case命令 148

8-6-1特殊模式匹配字符 149

8-6-2调试程序用的-x选项 151

8-6-3再回到case 154

8-7空命令 155

8-8&&和||结构 155

8-9练习 157

第9章循环 159

9-1 for命令 160

9-1-1 $@变量 162

9-1-2不带列表的for命令 164

9-2 while命令 165

9-3 until命令 167

9-4进一步讨论循环 171

9-4-1 中断循环 171

9-4-2跳过循环中的后续命令 173

9-4-3在后台执行循环 174

9-4-4循环中的输入/输出重定向 174

9-4-5通过管道向循环输入数据或接受循环的输出数据 175

9-4-6在单行中键入循环命令 175

9-5 Getopts命令 176

9-6练习 179

第10章数据的读入和显示 181

10-1 read命令 182

10-1-1复制文件的程序 182

10-1-2 echo中的特殊转义符 184

10-1-3 mycp的改进版本 184

10-1-4 mycp的最终版本 186

10-1-5菜单驱动的电话簿程序 189

10-1-6$$变量和临时文件 194

10-1-7 read的退出状态 195

10-2 printf命令 197

10-3练习 201

第11章环境 203

11-1局部变量 204

11-2导出变量 206

11-3 PS1和PS2 210

11-4 HOME,James 211

11-5 PATH 211

11-6当前目录 219

11-7-1命令 221

11-7再谈子 sbell 221

11-7-2 exec命令 224

11-7-3 (…)和{…;}结构 225

11-7-4给子 shell传递变量的另一种方法 228

11-8 profile文件 229

11-9 TERM变量 230

11-10 TZ变量 231

11-11 练习 231

第12章深入参数 233

12-1-1 ${parameter} 234

12-1-2${parameter:-value} 234

12-1 参数替换 234

12-1-3${parameter:=value} 235

12-1-4${parameter:?value} 236

12-1-5 ${parameter:+value} 236

12-2模式匹配结构 237

12-3$0变量 239

12-4 set命令 240

12-4-1 -x选项 240

12-4-2没有参数的set命令 241

12-4-3用set命令重新设置位置参数 241

12-4-4 -选项 243

12-4-5 set的其他选项 245

12-5 IFS变量 245

12-6 readonly命令 248

12-7 unset命令 248

12-8练习 249

第1 3章 杂项 251

13-1 eVal命令 252

13-2 wait命令 253

13-3 trap命令 254

13-3-2忽略信号 256

13-3-1 无参数trap 256

13-3-3复位陷阱 257

13-4深入I/O 257

13-4-1 <&-和>&- 258

13-4-2 内联输入重定向 258

13-4-3 shell档案文件 260

13-5函数 264

13-5-1去除函数定义 267

13-5-2 retum命令 267

13-6type命令 267

13-7练习 268

第14章再谈Rolo程序 269

14-1 设计思想 270

14-1-1 rolo 270

14-1-2 add……………………………………………………………………………………- 274

14-1-3 lu 275

14-1-4 displav 276

14-1-5 rem 277

14-1-6 change 278

14-1-7 listaH 280

14-2示例输出 281

14-3 练习 285

第15章shell的交互和非标准特性 287

15-1得到合适的shell 288

15-2 ENV文件 288

15-3命令行编辑 289

15-4命令历史记录 290

15-5 Vi行编辑模式 290

15-6 emacs行编辑模式 294

15-7-1 history命令 297

15-7访问历史记录的其他方式 297

15-7-2 fc命令 298

15-7-3 r命令 299

15-8 函数 300

15-8-1局部变量 300

15-8-2自动装载函数 300

15-9整数算术操作 301

15-9-1 整型类型 302

15-9-2不同进制的数字 303

15-10 alias命令 304

15-1 1 数组 306

15-12作业控制 312

15-13受限shell rsh 314

15-14其他杂项特性 316

15-14-1 cd命令的其他特性 316

15-14-2代字符替换 317

15-14-3搜索顺序 318

15-1 5兼容性总结 318

15-16练习 319

附录A shell总结 321

A-1 启动 322

A-2命令 322

A-3注释 322

A-4参数和变量 323

A-4-1 shell变量 323

A-4-2位置参数 323

A-4-3 特殊参数 323

A-4-4参数替换 324

A-5 命令重返 325

A-5-2 vi行编辑模式 326

A-5-1 fc命令 326

A-6引用 329

A-6-1代字符替换 329

A-6-2算术表达式 329

A-7文件名替换 330

A-8输入/输出重定向 331

A-9-2{…;}结构 332

A-9-3深入shell变量 332

A-10函数 332

A-9-1(…)结构 332

A-9导出变量和子shell执行 332

A-1 1作业控制 333

A-1 1-1 shell作业 333

A-11-2停止作业 333

A-12命令总结 334

A-12-1命令 334

A-12-2命令 334

A-12-3 alias命令 334

A-12-4 bg命令 335

A-12-5 break命令 335

A-12-6 case命令 335

A-12-7 cd 令 336

A-12-8 continue命令 337

A-12-9 echo命令 337

A-12-10 eval命令 338

A-12-11 exec命令 339

A-12-12 exit命令 339

A-12-13 expon命令 339

A-12-14 false命令 340

A-12-15 fc命令 340

A-12-17 for命令 341

A-1 2-16fg命令 341

A-12-18 getopts命令 342

A-1 2-19 hash命令 343

A-12-20 if命令 344

A-12-21 jobs命令 346

A-1 2-22 kill命令 346

A-12-23 newgrp命令 347

A-12-24 pwd命令 347

A-12-25 read命令 347

A-12-26 readonly命令 348

A-12-28 set命令 349

A-12-27 retum命令 349

A-12-29 shift命令 350

A-12-30 test命令 351

A-12-31 times命令 353

A-12-32 trap命令 353

A-12-33 true命令 354

A-12-34 type命令 354

A-12-35 umask命令 354

A-12-37 unset命令 355

A-12-38 until命令 355

A-12-36 unalias命令 355

A-12-39 wait命令 356

A-12-40 while命令 356

附录B补充信息 357

B-1联机文档 358

B-2 Web 上的文档 358

B-3书籍 359

B-3-1 O Reilly Associates 359

B-3-2 Sams and Que 359

B-3-3其他出版物 360