Linux Shell自动化运维(慕课版)

本书讲解了Shell编程的内容,由浅入深贴近实战,并且配备了强大的配套资源,包括PPT、视频、习题答案、答疑等
分享 推荐 4 收藏 104 阅读 9.8K
千锋教育 (作者) 978-7-115-53324-1

关于本书的内容有任何问题,请联系 李召

1.全书以实用、就业为导向。
2.涵盖从前期设计到最终实施的整个过程的所有知识点。
3.避免一味讲解理论,以实战带动讲解。
4.丰富的配套资源,使得学习不再难。

内容摘要

本书共10章,包括Shell变量、条件测试及流程控制、Shell循环、Shell数组、Shell函数、正则表达式、流编辑器Sed、文本处理工具Awk以及性能项目操作案例和项目Nginx日志分析案例等。

目录

第1章 初识Shell 1
1.1 Shell如何连接用户和内核 1
1.2 Shell连接其他程序 2
1.3 Shell同样支持编程 2
1.4 Shell是一种脚本语言 3
1.5 Shell的各种版本 3
1.5.1 Bourne Shell 4
1.5.2 C Shell 4
1.5.3 Bash Shell 4
1.5.4 查看Shell版本 4
1.6 Shell是运维工程师必备技能 5
1.7 Shell变量的定义 7
1.8 Shell变量的类型 7
1.8.1 自定义变量 7
1.8.2 环境变量 8
1.8.3 位置变量 9
1.8.4 预定义变量 9
1.9 Shell变量的赋值 10
1.9.1 直接赋值 10
1.9.2 从键盘读入赋值 10
1.9.3 使用命令行参数赋值 11
1.9.4 利用命令的输出结果赋值 11
1.9.5 从文件中读入数据赋值 12
1.10 Shell变量的运算 13
1.10.1 expr数值运算命令 13
1.10.2 “(())“或“[ ]”数值运算命令 13
1.10.3 let数值运算命令 14
1.10.4 Shell小数运算 14
1.11 Shell变量的删除、替换和替代 14
1.11.1 Shell变量的删除 14
1.11.2 Shell变量的替换 15
1.11.3 Shell变量的替代 16
1.12 Shell变量的自增 16
1.13 Shell变量中的特殊符号 17
1.14 本章小结 21
1.15 习题 21
第2章 Shell条件测试 23
2.1 Shell中的条件测试语句 23
2.1.1 文件测试 23
2.1.2 整数测试 24
2.1.3 字符串测试 25
2.1.4 逻辑运算符 26
2.2 if条件语句 27
2.2.1 if单分支 27
2.2.2 if双分支 27
2.2.3 if多分支 28
2.2.4 if语句配置yum源实战脚本 29
2.3 case条件语句 30
2.4 case条件语句案例实战 31
2.4.1 case删除用户判断 31
2.4.2 case实现系统工具箱的使用 32
2.4.3 case实现jumpserver 33
2.4.4 case实现多版本PHP安装 35
2.5 本章小结 37
2.6 习题 37
第3章 Shell循环 39
3.1 for循环语法结构 39
3.2 for循环语句案例实战 40
3.2.1 for循环语句实现批量主机ping探测 40
3.2.2 for循环语句实现批量用户创建 41
3.2.3 for循环语句实现文件中批量用户创建 42
3.3 expect交互式公钥推送 43
3.3.1 expect实现非交互登录 43
3.3.2 expect实现非交互传输文件 44
3.3.3 expect实现批量主机公钥推送 45
3.3.4 for循环语句实现批量主机密码修改 48
3.3.5 for循环语句实现批量远程主机SSH配置 49
3.4 while循环和until循环 50
3.4.1 while循环语句语法结构 51
3.4.2 until循环语句语法结构 51
3.5 循环语句案例实战 51
3.5.1 while循环语句实现批量用户创建 51
3.5.2 while循环语句和until循环语句测试远程主机连接 52
3.5.3 for、while、until终极对决 53
3.6 Shell的并发控制 55
3.6.1 for循环实现Shell的并发控制 55
3.6.2 for后台循环实现Shell的并发控制 56
3.7 Shell的并发控制案例实战 56
3.7.1 for循环实现Shell的并发控制案例实战 56
3.7.2 for后台循环实现Shell的并发控制案例实战 57
3.7.3 Linux管道实现Shell的并发控制案例实战 58
3.8 本章小结 59
3.9 习题 60
第4章 Shell数组 61
4.1 Shell数组的基本概念 61
4.2 Shell数组的类型 61
4.2.1 普通数组 62
4.2.2 关联数组 62
4.2.3 定义数组的类型 62
4.3 Shell数组的定义 62
4.3.1 直接定义数组 63
4.3.2 下标定义数组 63
4.3.3 间接定义数组 63
4.3.4 从文件中读入定义数组 64
4.4 Shell数组的遍历及赋值 64
4.4.1 常见的访问Shell数组表达式 64
4.4.2 while循环实现Shell数组的遍历 65
4.4.3 for循环实现Shell数组的遍历 66
4.4.4 Shell数组的赋值 66
4.4.5 Shell数组的删除 67
4.4.6 Shell数组的截取和替换 67
4.5 Shell数组脚本实战 68
4.5.1 array数组实现性别统计 68
4.5.2 array数组统计不同类型Shell的数量 69
4.5.3 array数组统计TCP连接状态数量 70
4.6 本章小结 71
4.7 习题 71
第5章 Shell编程中函数的用法 73
5.1 Shell函数的概念 73
5.2 Shell函数的语法 74
5.3 Shell函数的调用 74
5.3.1 Shell函数的传参介绍 74
5.3.2 Shell函数的返回值介绍 75
5.4 Shell函数的应用实战 75
5.4.1 脚本中调用Shell函数 75
5.4.2 Shell函数的返回值 77
5.4.3 Shell函数的位置参数 78
5.4.4 Shell函数数组变量的传参 78
5.4.5 Shell函数的返回输出数组变量 79
5.5 Shell内置命令和外部命令的区别 80
5.6 Shell内置命令 80
5.6.1 循环结构中break、continue、return和exit的区别 80
5.6.2 break、continue、exit命令执行流程图 81
5.6.3 break命令和continue命令案例实战 82
5.6.4 shift命令 84
5.7 本章小结 84
5.8 习题 85
第6章 正则表达式 86
6.1 正则表达式概念 86
6.2 正则表达式元字符 87
6.3 正则表达式语法 88
6.4 正则表达式运算符优先级 89
6.5 正则表达式匹配规则 90
6.5.1 基本模式匹配 90
6.5.2 字符簇 90
6.6 grep命令 92
6.6.1 grep命令简介 92
6.6.2 grep命令语法格式 93
6.6.3 grep命令使用方式 93
6.6.4 grep命令结合正则表达式使用 95
6.6.5 grep命令结合正则表达式案例实战 97
6.7 本章小结 100
6.8 习题 101
第7章 流编辑器sed 102
7.1 sed工作原理 102
7.2 sed语法格式及特点 103
7.2.1 sed语法格式 103
7.2.2 sed特点 104
7.3 sed用法 104
7.4 sed支持正则表达式 105
7.5 sed案例实战 108
7.6 本章小结 114
7.7 习题 114
第8章 awk文本处理工具 116
8.1 awk简介 116
8.2 awk工作流程 117
8.3 awk工作原理 117
8.4 awk语法格式 118
8.4.1 awk基本语法格式 118
8.4.2 awk语法选项实例 118
8.5 awk内置变量 123
8.6 awk模式 128
8.7 awk流程控制 131
8.7.1 if条件语句 132
8.7.2 while循环 133
8.7.3 for循环 135
8.7.4 break命令、continue命令、exit命令 136
8.7.5 数组 137
8.8 awk中的函数 141
8.8.1 awk内建函数 141
8.8.2 awk自定义函数 142
8.9 本章小结 144
8.10 习题 145
第9章 系统性能分析 146
9.1 常见的性能分析工具 146
9.1.1 vmstat命令 146
9.1.2 sar系统活动取样命令 149
9.1.3 iostat性能分析命令 150
9.1.4 top性能监控命令 152
9.1.5 ps实时监控系统命令 155
9.1.6 netstat监控网络状态命令 160
9.1.7 ifconfig查看地址命令 166
9.1.8 ss显示连接状态命令 170
9.1.9 free显示内存命令 176
9.1.10 df查看磁盘占用命令 178
9.1.11 dstat动态显示系统负载命令 181
9.1.12 iotop查看I/O命令 184
9.1.13 iftop实时监控命令 185
9.2 项目系统资源性能瓶颈脚本 187
9.3 本章小结 197
9.4 习题 197
第10章 项目实战集 199
10.1 服务器存活状态脚本项目 199
10.2 Nginx日志分析项目 201
10.3 Zabbix信息收集项目 208
10.3.1 Zabbix监控TCP状态信息收集 208
10.3.2 Zabbix监控MySQL状态信息收集 210
10.3.3 Zabbix监控内存信息收集 213
10.4 多机部署MySQL数据库项目 214
10.5 多机部署LNMP项目 216
10.6 本章小结 218
10.7 习题 218

读者评论

赶紧抢沙发哦!

我要评论

作者介绍

千锋教育 1.千锋教育采用全程面授高品质、高成本培养模式,教学大纲紧跟企业需求,拥有全国一体化就业保障服务,成为学员信赖的IT职业教育品牌。 2.获得荣誉包括:中关村移动互联网产业联盟副理事长单位、中国软件协会教育培训委员会认证一级培训机构、中关村国际孵化软件协会授权中关村移动互联网学院、教育部教育管理信息中心指定移动互联网实训基地等。

推荐用户

购买本书用户

相关图书

人邮微信
本地服务
人邮微信
教师服务
二维码
读者服务
读者服务
返回顶部
返回顶部