Linux命令行与shell脚本编程大全 第3版 [美] 布鲁姆(Richard Blum),布雷斯 PDF下载 公众号 其他格式

Linux命令行与shell脚本编程大全 第3版 [美] 布鲁姆(Richard Blum),布雷斯

计算机与互联网 操作系统

  • ISBN:9787115429674
  • 作者:[美] 布鲁姆(Richard
  • 包装:平装
  • 版次:1
  • 出版社:人民邮电出版社
  • 出版时间:2016-08-01

手机扫码免费下载

纠错留言

#电子书截图

Linux命令行与shell脚本编程大全 第3版 [美] 布鲁姆(Richard Blum),布雷斯截图

#电子书简介

基本信息

书名:Linux命令行与shell脚本编程大全 第3版

定价:109.00元

作者:[美] 布鲁姆(Richard Blum),布雷斯纳汉(Christine

出版社:人民邮电出版社

出版日期:2016-08-01

ISBN:9787115429674

字数:922000

页码:605

版次:3

装帧:平装

开本:16开

商品重量:

编辑推荐


精通Linux命令行与shell脚本编程,尽在本书中
本书是关于Linux命令行和shell命令的全面参考资料,涵盖详尽的动手教程和实际应用指南,并提供相关参考信息和背景资料,带你从Linux命令行基础入手,直到写出自己的shell。
时隔四年后的这一版本,针对Linux的新特性和实践,进行了全面更新。
使用简单的shell脚本工具实现任务自动化
创建shell脚本,全面理解shell的用途
管理文件系统与软件包
使用nano、KDE及GNOME等编辑器
学习结构化命令、文本处理及正则表达式
创建与电子邮件、数据库及Web相关的实用脚本
优化环境、微调脚本

内容提要


这是一本关于Linux命令行与shell脚本编程的全方位教程,主要包括四大部分:Linux命令行,shell脚本编程基础,高级shell脚本编程,如何创建实用的shell脚本。本书针对Linux系统的新特性进行了全面更新,不仅涵盖了详尽的动手教程和现实世界中的实用信息,还提供了与所学内容相关的参考信息和背景资料。通过本书的学习,你将轻松写出自己的shell脚本。

目录


部分 Linux 命令行
章 初识Linux shell2
1.1什么是Linux2
1.1.1深入探究Linux 内核3
1.1.2GNU 工具6
1.1.3Linux 桌面环境8
1.2Linux 发行版12
1.2.1核心Linux 发行版13
1.2.2特定用途的Linux 发行版13
1.2.3Linux LiveCD14
1.3小结15
第2章 走进shell16
2.1进入命令行16
2.1.1控制台终端17
2.1.2图形化终端17
2.2通过Linux 控制台终端访问CLI18
2.3通过图形化终端仿真访问CLI20
2.4使用GNOME Terminal 仿真器21
2.4.1访问GNOME Terminal21
2.4.2菜单栏22
2.5使用Konsole Terminal 仿真器25
2.5.1访问Konsole Terminal25
2.5.2菜单栏26
2.6使用xterm 终端仿真器29
2.6.1访问xterm30
2.6.2命令行参数30
2.7小结32
第3章 基本的bash shell 命令33
3.1启动shell33
3.2shell 提示符34
3.3bash 手册34
3.4浏览文件系统37
3.4.1Linux 文件系统37
3.4.2遍历目录40
3.5文件和目录列表42
3.5.1基本列表功能42
3.5.2显示长列表44
3.5.3过滤输出列表45
3.6处理文件46
3.6.1创建文件47
3.6.2复制文件47
3.6.3制表键自动补全50
3.6.4链接文件50
3.6.5重命名文件52
3.6.6删除文件54
3.7处理目录55
3.7.1创建目录55
3.7.2删除目录55
3.8查看文件内容58
3.8.1查看文件类型58
3.8.2查看整个文件59
3.8.3查看部分文件61
3.9小结63
第4章 更多的bash shell 命令64
4.1监测程序64
4.1.1探查进程64
4.1.2实时监测进程70
4.1.3结束进程72
4.2监测磁盘空间73
4.2.1挂载存储媒体73
4.2.2使用df 命令76
4.2.3使用du 命令77
4.3处理数据文件78
4.3.1排序数据78
4.3.2搜索数据81
4.3.3压缩数据83
4.3.4归档数据84
4.4小结85
第5章 理解shell86
5.1shell 的类型86
5.2shell 的父子关系88
5.2.1进程列表91
5.2.2别出心裁的子shell 用法93
5.3理解shell 的内建命令96
5.3.1外部命令96
5.3.2内建命令97
5.4小结101
第6章 使用Linux 环境变量103
6.1什么是环境变量103
6.1.1全局环境变量104
6.1.2局部环境变量105
6.2设置用户定义变量106
6.2.1设置局部用户定义变量106
6.2.2设置全局环境变量107
6.3删除环境变量109
6.4默认的shell 环境变量110
6.5设置PATH 环境变量113
6.6定位系统环境变量114
6.6.1登录shell115
6.6.2交互式shell 进程119
6.6.3非交互式shell120
6.6.4环境变量持久化121
6.7数组变量121
6.8小结122
第7章 理解Linux 文件权限124
7.1Linux 的安全性124
7.1.1/etc/passwd 文件124
7.1.2/etc/shadow 文件126
7.1.3添加新用户127
7.1.4删除用户129
7.1.5修改用户130
7.2使用Linux 组132
7.2.1/etc/group 文件133
7.2.2创建新组133
7.2.3修改组134
7.3理解文件权限135
7.3.1使用文件权限符135
7.3.2默认文件权限136
7.4改变安全性设置138
7.4.1改变权限138
7.4.2改变所属关系139
7.5共享文件140
7.6小结142
第8章 管理文件系统143
8.1探索Linux 文件系统143
8.1.1基本的Linux 文件系统143
8.1.2日志文件系统145
8.1.3写时复制文件系统147
8.2操作文件系统147
8.2.1创建分区147
8.2.2创建文件系统151
8.2.3文件系统的检查与修复153
8.3逻辑卷管理154
8.3.1逻辑卷管理布局154
8.3.2Linux 中的LVM155
8.3.3使用Linux LVM156
8.4小结162
第9章 安装软件程序163
9.1包管理基础163
9.2基于Debia的系统164
9.2.1用aptitude 管理软件包164
9.2.2用aptitude 安装软件包166
9.2.3用aptitude 更新软件168
9.2.4用aptitude 卸载软件169
9.2.5aptitude 仓库169
9.3基于Red Hat 的系统171
9.3.1列出已安装包171
9.3.2用yum 安装软件173
9.3.3用yum 更新软件174
9.3.4用yum 卸载软件174
9.3.5处理损坏的包依赖关系175
9.3.6yum 软件仓库176
9.4从源码安装177
9.5小结180
0章 使用编辑器181
10.1vim 编辑器181
10.1.1检查vim 软件包181
10.1.2vim 基础183
10.1.3编辑数据185
10.1.4复制和粘贴185
10.1.5查找和替换186
10.2nano 编辑器187
10.3emacs 编辑器188
10.3.1检查emacs 软件包189
10.3.2在控制台中使用emacs190
10.3.3在GUI 环境中使用emacs195
10.4KDE 系编辑器196
10.4.1KWrite 编辑器196
10.4.2Kate 编辑器200
10.5GNOME 编辑器202
10.5.1启动gedit203
10.5.2基本的gedit 功能203
10.5.3设定偏好设置204
10.6小结206
第二部分shell 脚本编程基础
1章 构建基本脚本210
11.1使用多个命令210
11.2创建shell 脚本文件211
11.3显示消息212
11.4使用变量214
11.4.1环境变量214
11.4.2用户变量215
11.4.3命令替换216
11.5重定向输入和输出218
11.5.1输出重定向218
11.5.2输入重定向219
11.6管道220
11.7执行数学运算222
11.7.1expr 命令223
11.7.2使用方括号224
11.7.3浮点解决方案225
11.8退出脚本228
11.8.1查看退出状态码228
11.8.2et 命令229
11.9小结231
2章 使用结构化命令232
12.1使用if-the语句232
12.2if-then-else 语句235
12.3嵌套if235
12.4test 命令238
12.4.1数值比较240
12.4.2字符串比较242
12.4.3文件比较246
12.5复合条件测试254
12.6if-the的高级特性255
12.6.1使用双括号255
12.6.2使用双方括号256
12.7case 命令257
12.8小结258
3章 更多的结构化命令260
13.1for 命令260
13.1.1读取列表中的值261
13.1.2读取列表中的复杂值262
13.1.3从变量读取列表263
13.1.4从命令读取值264
13.1.5更改字段分隔符265
13.1.6用通配符读取目录266
13.2C 语言风格的for 命令268
13.2.1C 语言的for 命令268
13.2.2使用多个变量269
13.3while 命令270
13.3.1while 的基本格式270
13.3.2使用多个测试命令271
13.4until 命令272
13.5嵌套循环274
13.6循环处理文件数据276
13.7控制循环277
13.7.1break 命令277
13.7.2continue 命令280
13.8处理循环的输出282
13.9实例283
13.9.1查找可执行文件284
13.9.2创建多个用户账户285
13.10小结286
4章 处理用户输入287
14.1命令行参数287
14.1.1读取参数287
14.1.2读取脚本名289
14.1.3测试参数291
14.2特殊参数变量292
14.2.1参数统计292
14.2.2抓取所有的数据294
14.3移动变量295
14.4处理选项296
14.4.1查找选项297
14.4.2使用getopt 命令300
14.4.3使用更高级的getopts302
14.5将选项标准化305
14.6获得用户输入306
14.6.1基本的读取306
14.6.2超时307
14.6.3隐藏方式读取308
14.6.4从文件中读取309
14.7小结309
5章 呈现数据311
15.1理解输入和输出311
15.1.1标准文件描述符311
15.1.2重定向错误313
15.2在脚本中重定向输出315
15.2.1临时重定向315
15.2.2重定向316
15.3在脚本中重定向输入317
15.4创建自己的重定向317
15.4.1创建输出文件描述符318
15.4.2重定向文件描述符318
15.4.3创建输入文件描述符319
15.4.4创建读写文件描述符320
15.4.5关闭文件描述符321
15.5列出打开的文件描述符322
15.6阻止命令输出323
15.7创建临时文件324
15.7.1创建本地临时文件324
15.7.2在/tmp 目录创建临时文件325
15.7.3创建临时目录326
15.8记录消息327
15.9实例328
15.10小结330
6章 控制脚本331
16.1处理信号331
16.1.1重温Linux 信号331
16.1.2生成信号332
16.1.3捕获信号334
16.1.4捕获脚本退出335
16.1.5修改或移除捕获335
16.2以后台模式运行脚本338
16.2.1后台运行脚本338
16.2.2运行多个后台作业340
16.3在非控制台下运行脚本341
16.4作业控制342
16.4.1查看作业342
16.4.2重启停止的作业344
16.5调整谦让度345
16.5.1nice 命令345
16.5.2renice 命令346
16.6定时运行作业346
16.6.1用at 命令来计划执行作业347
16.6.2安排需要定期执行的脚本349
16.6.3使用新shell 启动脚本352
16.7小结353
第三部分高级shell 脚本编程
7章 创建函数356
17.1基本的脚本函数356
17.1.1创建函数357
17.1.2使用函数357
17.2返回值359
17.2.1默认退出状态码359
17.2.2使用retur命令360
17.2.3使用函数输出361
17.3在函数中使用变量362
17.3.1向函数传递参数362
17.3.2在函数中处理变量364
17.4数组变量和函数366
17.4.1向函数传数组参数366
17.4.2从函数返回数组368
17.5函数递归369
17.6创建库370
17.7在命令行上使用函数371
17.7.1在命令行上创建函数372
17.7.2在.bashrc 文件中定义函数372
17.8实例374
17.8.1下载及安装374
17.8.2构建库374
17.8.3shtool 库函数376
17.8.4使用库376
17.9小结377
8章 图形化桌面环境中的脚本编程378
18.1创建文本菜单378
18.1.1创建菜单布局379
18.1.2创建菜单函数380
18.1.3添加菜单逻辑380
18.1.4整合shell 脚本菜单381
18.1.5使用select 命令382
18.2制作窗口384
18.2.1dialog 包384
18.2.2dialog 选项389
18.2.3在脚本中使用dialog 命令391
18.3使用图形393
18.3.1KDE 环境393
18.3.2GNOME 环境396
18.4小结400
9章 初识sed 和gawk401
19.1文本处理401
19.1.1sed 编辑器401
19.1.2gawk 程序404
19.2sed 编辑器基础410
19.2.1更多的替换选项410
19.2.2使用地址411
19.2.3删除行414
19.2.4插入和附加文本415
19.2.5修改行417
19.2.6转换命令418
19.2.7回顾打印419
19.2.8使用sed 处理文件421
19.3小结423
第20章 正则表达式424
20.1什么是正则表达式424
20.1.1定义424
20.1.2正则表达式的类型425
20.2定义BRE 模式426
20.2.1纯文本426
20.2.2特殊字符427
20.2.3锚字符428
20.2.4点号字符430
20.2.5字符组430
20.2.6排除型字符组432
20.2.7区间433
20.2.8特殊的字符组434
20.2.9星号434
20.3扩展正则表达式436
20.3.1问号436
20.3.2加号437
20.3.3使用花括号437
20.3.4管道符号438
20.3.5表达式分组439
20.4正则表达式实战439
20.4.1目录文件计数440
20.4.2验证441
20.4.3解析邮件地址443
20.5小结444
第21章 sed 进阶445
21.1多行命令445
21.1.1next 命令446
21.1.2多行删除命令449
21.1.3多行打印命令449
21.2保持空间450
21.3排除命令451
21.4改变流454
21.4.1分支454
21.4.2测试455
21.5模式替代456
21.5.1&符号457
21.5.2替代单独的单词457
21.6在脚本中使用sed458
21.6.1使用包装脚本458
21.6.2重定向sed 的输出459
21.7创建sed 实用工具460
21.7.1加倍行间距460
21.7.2对可能含有空白行的文件加倍行间距460
21.7.3给文件中的行编号461
21.7.4打印末尾行462
21.7.5删除行463
21.7.6删除HTML 标签466
21.8小结467
第22章 gawk 进阶469
22.1使用变量469
22.1.1内建变量469
22.1.2自定义变量474
22.2处理数组476
22.2.1定义数组变量476
22.2.2遍历数组变量477
22.2.3删除数组变量478
22.3使用模式478
22.3.1正则表达式478
22.3.2匹配操作符479
22.3.3数学表达式480
22.4结构化命令480
22.4.1if 语句480
22.4.2while 语句482
22.4.3do-while 语句483
22.4.4for 语句484
22.5格式化打印484
22.6内建函数487
22.6.1数学函数487
22.6.2字符串函数488
22.6.3时间函数490
22.7自定义函数490
22.7.1定义函数490
22.7.2使用自定义函数491
22.7.3创建函数库491
22.8实例492
22.9小结493
第23章 使用其他shell495
23.1什么是dash shell495
23.2dash shell 的特性496
23.2.1dash 命令行参数496
23.2.2dash 环境变量497
23.2.3dash 内建命令499
23.3dash 脚本编程500
23.3.1创建dash 脚本500
23.3.2不能使用的功能500
23.4zsh shell502
23.5zsh shell 的组成503
23.5.1shell 选项503
23.5.2内建命令504
23.6zsh 脚本编程508
23.6.1数学运算508
23.6.2结构化命令509
23.6.3函数510
23.7小结510
第四部分创建实用的脚本
第24章 编写简单的脚本实用工具514
24.1归档514
24.2管理用户账户523
24.2.1需要的功能523
24.2.2创建脚本530
24.2.3运行脚本535
24.3监测磁盘空间537
24.3.1需要的功能537
24.3.2创建脚本540
24.3.3运行脚本541
24.4小结542
第25章 创建与数据库、Web及电子邮件相关的脚本543
25.1MySQL 数据库543
25.1.1使用MySQL543
25.1.2在脚本中使用数据库552
25.2使用Web555
25.2.1安装Lynx556
25.2.2lynx 命令行557
25.2.3Lynx 配置文件558
25.2.4从Lynx 中获取数据559
25.3使用电子邮件561
25.4小结564
第26章 一些小有意思的脚本565
26.1发送消息565
26.1.1功能分析565
26.1.2创建脚本568
26.2获取格言573
26.2.1功能分析574
26.2.2创建脚本577
26.3编造借口583
26.3.1功能分析583
26.3.2创建脚本586
26.4小结587
附录Abash 命令快速指南589
附录Bsed 和gawk 快速指南597

作者介绍


Ricahard Blum,已在IT行业打拼20余年,担任过UNIX、Linux、Novell和Windows Server的系统及网络管理员,在Linux和开源软件领域著作颇丰。他还是一名网络课程讲师,美国多所大学和学院都采用他的Linux基础课程。

Christine Bresnahan,系统管理员,已经在IT行业工作了30余年,通过CompTIA Linux+、LPIC-1、Linux Essentials认证。目前在印第安纳波利斯市常春藤技术社区学院担任兼职教授,讲授Linux系统管理、Linux安全和Windows安全、Python编程等课程。

序言



  • 评论列表(0

留言评论