LINUX SHELL核心编程指南

相关资料

[

本书所有内容皆源于丁老师的日常工作积累,作为一个有着十多年行业经验的一线Linux专家级讲师,丁老师将多年的教学与实践经验进行了总结,融会贯通,皆为精华。本书不单讲解Shell的各种语法及功能,还包含大量的有趣案例,都是丁老师在教学中积累的,极具参考价值。我相信,每位读者都可以从本书中觅得惊喜。
——贺正刚 红帽中国技术交付经理、高级认证考官

本书的特点是深入浅出、注重实用和实例。作为开源培训领域的资深讲师,丁老师在循序渐进地讲解技术方面有着多年的成功经验。与学院派的风格不同,职业教育更注重每项技术、技能在实际工作场合中的用途,相信读者在边读边做的过程中会有自己的切身体会。
——淮晋阳 红帽中国培训渠道客户经理
很多刚开始学习Shell脚本编程的人,在学习了基本语法后,会因为缺乏脚本案例而没有编写脚本的思路,很多人还没有开始真正的编程就已经放弃,这也是目前市面上其他类似图书的缺陷。而本书的亮点是既讲解了Shell的语法格式,又能让读者通过大量案例脚本,验证所学知识,构建编写脚本的思路,难能可贵。
——周华飞 达内集团Python人工智能教学研发总监

丁老师的作品《Linux Shell核心编程指南》深入浅出地介绍了Linux Shell编程技术,通过许多精心设计的小游戏把枯燥的技术变得生动有趣,同时通过大量的实战案例让读者获得真实的生产经验,相信这本书无论是对于初学者还是对于系统管理员和设计维护人员,都有极大的帮助。
——陆海翔 华为云教育行业解决方案总经理

这本书是作者继《Linux运维之道》之后的又一力作,作者的著作我都详细阅读过,其内容通俗易懂,实用性强,让人受益匪浅。《Linux Shell核心编程指南》也不例外,本书从Shell脚本的编写规范、基础理论,再到对Shell脚本执行过程的深度剖析,由浅入深、层次清晰,让读者能够知其因,晓其理;同时配备了大量适用于生产的实战案例,可见作者心思缜密,为本书费尽心血。
——罗俊 亚1马1逊(A1mazon)云架构师

]

本书特色

[

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

]

内容简介

[

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

]

作者简介

[

丁明一达内集团云计算教学研发总监、开源技术推广者;红帽认证架构师(RHCA)、红帽认证高级讲师(RHCI);曾任职于中国电信、鹏博士等多家IT企业,并创办多个企业,十余年IT行业经验;精通Linux系统、Shell脚本编程、各大云计算产品、Docker容器技术、分布式存储技术,拥有丰富的虚拟化技术使用经验,对企业集群存储环境及高性能、高可用架构有深入的研究,著有畅销图书《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

封面

LINUX SHELL核心编程指南

书名:LINUX SHELL核心编程指南

作者:丁明一

页数:452

定价:¥89.0

出版社:电子工业出版社

出版日期:2018-01-01

ISBN:9787121375712

PDF电子书大小:62MB 高清扫描完整版

百度云下载:http://www.chendianrong.com/pdf

发表评论

邮箱地址不会被公开。 必填项已用*标注