新太阳城

欢迎访问太阳城官网 ,学习、交流 分享 !

返回太阳城官网 |

LINUX SHELL核心编程指南 丁明一著 2019年版

收藏
  • 大小:128.64 MB
  • 语言:中文版
  • 格式: PDF文档
  • 阅读软件: Adobe Reader
资源简介
LINUX SHELL核心编程指南
作者:丁明一著
出版时间:2019年版
内容简介
  在IT产业链中开源的理念已成为绝大多数企业的共识。随着开源技术的不断进步与创新,云计算也逐步深入到了每个互联网企业的内部。但是,随之而来的便是管理成本的提高,大量的物理或者虚拟主机需要管理与维护,如何能够更好地实现自动化运维,成为企业需要迫切解决的问题。行业中自动化运维的软件很多,Puppet、Saltstack、Ansible等让新太阳城在云时代依然可以轻松管理和维护设备与业务,然而像Ansible这样的自动化工具,虽然已经内置了很多模块,但是在解决每个企业的个性化需求时还需要编写自动化脚本。本书将围绕Linux系统中常用的Shell脚本语言,讲解如何通过Shell编写自动化、智能化脚本。全书以案例贯穿,对每个知识点都可以找到与之对应的案例,完成本书中的每个案例对于未来在企业中的实际应用极具意义。另外,在本书中配套有很多游戏案例,通过编写游戏脚本可以极大地提升学习的乐趣。 本书中的代码可以在https://github.com/jacobproject/shell_scripts下载,现在的商业环境是一个充满竞争的环境,很多企业的业务量在不断地增长,对服务质量的要求也越来越高。特别是互联网企业为了满足客户更高的需求,提升用户使用体验,IT部门需要维护的设备数量从早期的几台,发展到了目前的数以万计,如此庞大的服务器维护量,通常会让IT管理人员头疼不已。本书介绍的自动化运维内容可以让新太阳城快速掌握大规模批量处理的简单方法。 本书从基础知识讲到数据分析、数据过滤等高级应用,适合Linux运维人员、Shell编程爱好者阅读,可作为Linux运维人员的一本优秀的案头书。
目录
第1章 从这里开始,起飞了 1

1.1 脚本文件的书写格式 1

1.2 脚本文件的各种执行方式 3

1.3 如何在脚本文件中实现数据的输入与输出 6

1.4 输入与输出的重定向 17

1.5 各种引号的正确使用姿势 24

1.6 千变万化的变量 28

1.7 数据过滤与正则表达式 33

1.8 各式各样的算术运算 40



第2章 人工智能,很人工、很智能的脚本 46

2.1 智能化脚本的基础之测试 46

2.2 字符串的判断与比较 47

2.3 整数的判断与比较 49

2.4 文件属性的判断与比较 51

2.5 探究[[]]和[]的区别 55

2.6 实战案例:系统性能监控脚本 60

2.7 实战案例:单分支if语句 62

2.8 实战案例:双分支if语句 68

2.9 实战案例:如何监控HTTP服务状态 72

2.10 实战案例:多分支if语句 81

2.11 实战案例:简单、高效的case语句 87

2.12 实战案例:编写Nginx启动脚本 92

2.13 揭秘模式匹配与通配符、扩展通配符 94

2.14 Shell小游戏之石头剪刀布 100



第3章 根本停不下来的循环和中断控制 104

3.1 玩转for循环语句 104

3.2 实战案例:猴子吃香蕉的问题 114

3.3 实战案例:进化版HTTP状态监控脚本 116

3.4 神奇的循环嵌套 117

3.5 非常重要的IFS 124

3.6 实战案例:while循环 130

3.7 Shell小游戏之猜随机数字 134

3.8 实战案例:如何通过read命令读取文件中的数据 136

3.9 until和select循环 140

3.10 中断与退出控制 143

3.11 Shell小游戏之机选双色球 149



第4章 请开始你的表演,数组、Subshell与函数 152

4.1 强悍的数组 152

4.2 实战案例:斐波那契数列 157

4.3 实战案例:网站日志分析脚本 159

4.4 常犯错误的SubShell 164

4.5 启动进程的若干种方式 172

4.6 非常实用的函数功能 176

4.7 变量的作用域与return返回值 179

4.8 实战案例:多进程的ping脚本 185

4.9 控制进程数量的核心技术——文件描述符和命名管道 187

4.10 实战案例:一键源码部署LNMP的脚本 197

4.11 递归函数 204

4.12 排序算法之冒泡排序 206

4.13 排序算法之快速排序 209

4.14 排序算法之插入排序 213

4.15 排序算法之计数排序 215

4.16 Shell小游戏之单词拼接puzzle 218



第5章 一大波脚本技巧正向你走来 221

5.1 Shell八大扩展功能之花括号 221

5.2 Shell八大扩展功能之波浪号 223

5.3 Shell八大扩展功能之变量替换 224

5.4 Shell八大扩展功能之命令替换 234

5.5 Shell八大扩展功能之算术替换 234

5.6 Shell八大扩展功能之进程替换 236

5.7 Shell八大扩展功能之单词切割 238

5.8 Shell八大扩展功能之路径替换 239

5.9 实战案例:生成随机密码的若干种方式 240

5.10 Shell解释器的属性与初始化命令行终端 247

5.11 trap信号捕获 257

5.12 实战案例:电子时钟 259

5.13 Shell小游戏之抓住小老鼠算你赢 263

5.14 实战案例:脚本排错技巧 267

5.15 实战案例:Shell版本的进度条功能 270

5.16 再谈参数传递之xargs 276

5.17 使用shift移动位置参数 280

5.18 实战案例:Nginx日志切割脚本 281



第6章 上古神兵利器sed 285

6.1 sed基本指令 285

6.2 sed高级指令 305

6.3 实战案例:自动化配置vsftpd脚本 318

6.4 实战案例:自动化配置DHCP脚本 325

6.5 实战案例:自动化克隆KVM虚拟机脚本 329

6.6 实战案例:通过libguestfs管理KVM虚拟机脚本 337

6.7 实战案例:自动化配置SSH安全策略脚本 343

6.8 实战案例:基于GRUB配置文件修改内核启动参数脚本 345

6.9 实战案例:网络爬虫脚本 348

6.10 Shell小游戏之点名抽奖器 354



第7章 不可思议的编程语言awk 356

7.1 awk基础语法 356

7.2 awk条件判断 374

7.3 awk数组与循环 379

7.4 awk函数 388

7.5 实战案例:awk版网站日志分析 398

7.6 实战案例:监控网络连接状态 403

7.7 实战案例:获取SSH暴力破解攻击黑名单列表 412

7.8 实战案例:性能监控脚本 418

7.9 实战案例:数据库监控脚本 420

7.10 实战案例:awk版网络爬虫 429
下载地址
新太阳城 新太阳城游戏 太阳城 太阳城官网 申博太阳城 申博太阳城