分享
 
 
 

精通shell编程(第二版)

  点此进入淘宝搜索页搜索
  特别声明:本站仅为商品信息简介,并不出售商品,您可点击文中链接进入淘宝网搜索页搜索该商品,有任何问题请与具体淘宝商家联系。
  參考價格: 点此进入淘宝搜索页搜索
  分類: 图书,计算机/网络,计算机理论,

作者: (美)维拉格范 著,卢涛 译

出 版 社: 人民邮电出版社

出版时间: 2003-2-1字数: 552千版次: 1版1次页数: 350印刷时间: 2003/02/01开本:印次:纸张: 胶版纸I S B N : 9787115111418包装: 平装编辑推荐

本书由浅入深地介绍了shell编程技术。本书适合任何对shell编程感兴趣的读者。初级读者可以从本书第一部分获得入门知识,中、高级读者可以越过第一部分,直接从第二部分和第三部分深入了解有关shell编程的知识。

内容简介

本书由浅入深地介绍了shell编程技术。为了满足不同读者的需要,本书内容分为三个部分:UNIX和shell工具介绍、shell编程以及高级主题。UNIX和shell工具介绍部分复习了UNIX系统和shell编程的一些基本概念和常用命令。shell 编程部分全面介绍了shell编程的每个技术环节。最后,高级主题部分讲解了一些比较有难度的专题。本书既可以作为学习教材,又可以作为参考手册。通过阅读本书,读者可以全面掌握shell编程的知识。

本书适合任何对shell编程感兴趣的读者。初级读者可以从本书第一部分获得入门知识,中、高级读者可以越过第一部分,直接从第二部分和第三部分深入了解有关shell编程的知识。

作者简介

目录

第一部分 UNIX和shell工具

第1章 shell基础3

1.1 命令是什么3

1.1.1 简单命令4

1.1.2 复杂命令4

1.1.3 复合命令4

1.1.4 命令分隔符5

1.2 什么是shell6

1.2.1 shell提示符6

1.2.2 不同类型的shell6

1.3 总结9

1.4 问题10

1.5 术语10

第2章 脚本基础11

2.1 UNIX系统11

2.1.1 登录系统12

2.2 shell模式和初始化13

2.2.1 初始化过程13

2.2.2 初始化文件内容15

2.2.3 交互式和非交互式shell15

2.3 获得帮助18

2.3.1 在线资源20

2.4 总结20

2.5 问题21

2.6 术语21

第3章 使用文件23

3.1 列出文件23

3.1.1 隐藏文件24

3.1.2 条件选项组25

3.2 文件内容26

3.3 操作文件29

3.3.1 拷贝文件(cp)30

3.3.2 重命名文件(mv)31

3.3.3 删除文件(rm)31

3.4 总结32

3.5 问题33

3.6 术语33

第4章 对目录进行操作35

4.1 目录树35

4.1.1 文件名36

4.1.2 路径名36

4.2 改变目录38

4.2.1 主目录38

4.2.2 改变到各种目录38

4.3 列出文件和目录40

4.3.1 列出目录40

4.3.2 列出文件40

4.4 操作目录41

4.4.1 创建目录41

4.4.2 拷贝文件和目录42

4.4.3 移动文件和目录43

4.4.4 删除目录44

4.5 总结45

4.6 问题46

4.7 术语46

第5章 输入和输出47

5.1 输出47

5.1.1 输出到终端47

5.1.2 输出重定向51

5.2 输入52

5.2.1 输入重定向53

5.2.2 读取用户输入54

5.2.3 管道54

5.3 文件描述符55

5.3.1 使用文件描述符和文件关联55

5.3.2 普通的输入/输出重定向56

5.4 总结58

5.5 问题58

5.6 术语59

第6章 操作文件属性61

6.1 文件类型61

6.1.1 确定文件的类型61

6.1.2 常规文件62

6.1.3 链接62

6.1.4 设备文件64

6.1.5 命名管道65

6.2 属主、组和文件权限65

6.2.1 查看权限66

6.2.2 改变文件和目录的权限67

6.2.3 改变属主和组69

6.3 总结70

6.4 问题71

6.5 术语71

第7章 进程73

7.1 开始一段进程73

7.1.1 前台进程73

7.1.2 后台进程74

7.2 列出和终止进程77

7.2.1 jobs命令77

7.2.2 ps命令78

7.2.3 关闭进程(kill命令)79

7.3 父进程和子进程79

7.3.1 Subshell80

7.3.2 进程权限81

7.3.3 覆盖当前的进程(exec命令)81

7.4 总结82

7.5 问题82

7.6 术语82

第二部分 shelll编程

第8章 变量85

8.1 变量的操作85

8.1.1 标量变量85

8.1.2 数组变量87

8.1.3 只读变量89

8.1.4 删除变量90

8.2 环境和shell变量90

8.2.1 输出环境变量91

8.2.2 shell变量91

8.3 总结92

8.4 问题92

8.5 术语93

第9章 置换95

9.1 文件名置换95

9.1.1 元字符 *95

9.1.2 元字符 ?97

9.1.3 匹配字符集合97

9.2 变量置换99

9.2.1 缺省值置换99

9.2.2 缺省值赋值99

9.2.3 空值错误100

9.2.4 有值置换100

9.3 命令和算式置换100

9.3.1 命令置换100

9.3.2 算式置换101

9.4 总结102

9.5 问题102

9.6 术语103

第10章 引用105

10.1 用反斜线实现引用105

10.2 使用单引号106

10.3 使用双引号107

10.4 引用规则和场合108

10.4.1 引用处理忽略单词界限108

10.4.2 在命令中的引用处理组合108

10.4.3 在单一参数中内嵌多个空格108

10.4.4 引用处理换行以在下一行中继续109

10.4.5 引用处理以访问包含特殊字符的文件名109

10.4.6 引用处理正则表达式通配符110

10.4.7 引用处理反斜线以启用echo转义序列110

10.4.8 引用处理通配符以适合cpio和find111

10.5 总结111

10.6 问题112

10.7 术语112

第11章 流控制113

11.1 if语句113

11.1.1 一个if语句的例子114

11.1.2 使用test115

11.2 case语句123

11.2.1 一个case语句的例子123

11.2.2 使用模式124

11.3 总结125

11.4 问题125

11.5 术语126

第12章 循环127

12.1 while循环127

12.1.1 嵌套while循环128

12.1.2 while中合法的用户输入129

12.1.3 输入重定向和while130

12.1.4 until循环131

12.2 for和select循环132

12.2.1 for循环132

12.2.2 select循环134

12.3 循环控制136

12.3.1 无限循环和break命令136

12.3.2 continue命令137

12.4 总结137

12.5 问题138

12.6 术语138

第13章 参数139

13.1 特殊变量139

13.1.1 使用$0140

13.2 选项和变元141

13.2.1 处理变元141

13.2.2 使用basename142

13.2.3 常用变元处理问题143

13.3 shell脚本的选项解析145

13.4 总结149

13.5 问题149

13.6 术语149

第14章 函数151

14.1 使用函数151

14.1.1 执行函数151

14.1.2 别名VS函数153

14.1.3 取消函数154

14.2 理解范围、递归、返回值和数据共享154

14.2.1 范围154

14.2.2 递归156

14.2.3 返回值158

14.2.4 数据共享158

14.2.5 在文件系统中跳转158

14.3 总结162

14.4 问题162

14.5 术语163

第15章 文本过滤器165

15.1 head和tail命令165

15.1.1 head命令165

15.1.2 tail命令166

15.2 使用grep167

15.2.1 查找单词167

15.2.2 从标准输入读取数据169

15.2.3 行号169

15.2.4 只显示文件名170

15.3 数单词数171

15.3.1 tr命令171

15.3.2 sort命令172

15.3.3 uniq命令173

15.3.4 排序数字173

15.3.5 在tr中使用字符类175

15.4 总结176

15.5 问题176

15.6 术语177

第16章 用正则表达式过滤文本179

16.1 awk和sed的基础179

16.1.1 调用语法179

16.1.2 基本操作180

16.1.3 正则表达式180

16.2 使用sed184

16.2.1 打印行185

16.2.2 删除行185

16.2.3 执行替换186

16.2.4 使用多重sed命令188

16.2.5 在管道中使用sed188

16.3 总结189

16.4 问题189

16.5 术语190

第17章 用awk过滤文本191

17.1 什么是awk191

17.1.1 基本语法191

17.1.2 字段编辑192

17.1.3 执行指定模式的操作193

17.1.4 比较操作符194

17.1.5 使用标准输入作为输入196

17.2 使用awk功能197

17.2.1 变量197

17.2.2 流程控制203

17.3 总结206

17.4 问题207

17.5 术语208

第18章 其他工具211

18.1 内建命令211

18.1.1 eval命令211

18.1.2 :命令212

18.1.3 type命令213

18.2 sleep命令214

18.3 find命令214

18.3.1 find:开始路径215

18.3.2 find:-name选项216

18.3.3 find:-type选项216

18.3.4 find:-mtime、-atime、-ctime217

18.3.5 find:-size 选项217

18.3.6 find:联合选项218

18.3.7 find:否定选项218

18.3.8 find:-print 动作218

18.3.9 find:-exec 动作218

18.4 xargs219

18.5 expr命令220

18.5.1 expr和正则表达式221

18.6 bc命令222

18.7 总结223

18.8 问题223

18.9 术语223

第三部分 高级主题

第19章 信号227

19.1 如何描述信号227

19.1.1 列出信号228

19.1.2 缺省动作228

19.1.3 发送信号228

19.2 信号处理229

19.2.1 trap命令230

19.2.2 清除临时文件230

19.2.3 忽略信号232

19.2.4 安装定时器232

19.3 总结235

19.4 问题235

19.5 术语236

第20章 调试237

20.1 打开调试237

20.1.1 使用set命令238

20.2 使用语法检查239

20.2.1 为什么语法检查很重要240

20.2.2 使用冗余模式241

20.3 shell跟踪242

20.3.1 用shell跟踪来查找语法错误242

20.3.2 用shell跟踪来查找逻辑错误245

20.3.3 使用调试钩子246

20.4 总结247

20.5 问题248

20.6 术语248

第21章 用函数解决问题249

21.1 库的基本概念249

21.1.1 什么是函数库249

21.1.2 使用函数库250

21.2 创建函数库250

21.2.1 命名函数库251

21.2.2 命名函数251

21.2.3 显示错误和警告消息251

21.2.4 提出问题252

21.2.5 检查磁盘空间257

21.2.6 通过进程名获取进程ID259

21.2.7 获取用户的数字UID260

21.3 总结261

21.4 问题261

21.5 术语261

第22章 用shell脚本解决问题263

22.1 启动脚本263

22.1.1 系统的启动263

22.1.2 开发一个init脚本266

22.2 维护一个地址簿274

22.2.1 显示信息275

22.2.2 增加信息277

22.2.3 删除信息280

22.3 总结283

22.4 问题284

22.5 术语285

第23章 编写可移植的脚本287

23.1 确定UNIX的版本287

23.1.1 BSD287

23.1.2 System V288

23.1.3 Linux288

23.1.4 使用uname来确定UNIX的版本289

23.1.5 用一个函数来判断UNIX的版本290

23.2 增加可移植性的技术292

23.2.1 条件执行292

23.2.2 抽象293

23.3 总结296

23.4 问题296

23.5 术语297

第24章 shell编程常见问题299

24.1 shell和命令的问题299

24.2 变量和参数的问题303

24.3 文件和目录的问题305

24.4 总结308

第四部分 附录

附录A 命令参考311

附录B 术语表321

附录C 答案327

附录D shell函数库347

媒体评论

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
>>返回首頁<<
 
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有