内容简介
本书是《跟老男孩学Linux运维》系列中的Shell编程实战篇,由资深Linux运维专家老男孩倾力撰写。全书以实战为核心,系统讲解了Shell脚本编程在Linux系统运维中的广泛应用,旨在帮助读者从入门到精通,快速掌握Shell编程的核心技能。
内容涵盖Shell脚本基础、变量与字符串处理、正则表达式、循环与条件判断、函数与数组、输入输出重定向、信号处理、脚本调试等关键知识点。每章均配有大量实战案例和习题,启发性强,便于读者边学边练。书中还特别介绍了Shell脚本在自动化运维、系统监控、日志分析、备份恢复等典型场景中的落地方法,并分享了许多一线运维工程师的经验和技巧。
本书不仅适合Linux初学者、运维新手阅读,也适合有一定经验的运维工程师、开发人员作为参考手册。通过本书的学习,读者将能够编写出高效、稳定、可复用的Shell脚本,显著提升运维工作效率和解决问题的能力。
目录
第1章 如何才能学好Shell编程
1.1 为什么要学习Shell编程
1.2 学好Shell编程所需的基础知识
1.3 如何才能学好Shell编程之“老鸟”经验谈
1.4 学完本书后可以达到何种Shell编程高度
第2章 Shell脚本初步入门
2.1 什么是Shell
2.2 什么是Shell脚本
2.3 Shell脚本在Linux运维工作中的地位
2.4 脚本语言的种类
2.5 常用操作系统默认的Shell
2.6 Shell脚本的建立和执行
第3章 Shell变量的核心基础知识与实践
3.1 什么是Shell变量
3.2 环境变量
3.3 普通变量
3.4 变量定义技巧总结
第4章 Shell变量知识进阶与实践
4.1 Shell中特殊且重要的变量
4.2 bash Shell内置变量命令
4.3 Shell变量子串知识及实践
4.4 Shell特殊扩展变量的知识与实践
第5章 变量的数值计算实践
5.1 算术运算符
5.2 双小括号“(())”数值运算命令
5.3 let运算命令的用法
5.4 expr命令的用法
5.5 bc命令的用法
5.6 awk实现计算
5.7 declare(同typeset)命令的用法
5.8 $[]符号的运算示例
5.9 基于Shell变量输入read命令的运算实践
第6章 Shell脚本的条件测试与比较
6.1 Shell脚本的条件测试
6.2 文件测试表达式
6.3 字符串测试表达式
6.4 整数二元比较操作符
6.5 逻辑操作符
6.6 测试表达式test、[]、[[]]、(())的区别总结
第7章 if条件语句的知识与实践
7.1 if条件语句
7.2 if条件语句企业案例精讲
第8章 Shell函数的知识与实践
8.1 Shell函数的概念与作用介绍
8.2 Shell函数的语法
8.3 Shell函数的执行
8.4 Shell函数的基础实践
8.5 利用Shell函数开发企业级URL检测脚本
8.6 利用Shell函数开发一键优化系统脚本
8.7 利用Shell函数开发rsync服务启动脚本
第9章 case条件语句的应用实践
9.1 case条件语句的语法
9.2 case条件语句实践
9.3 实践:给输出的字符串加颜色
9.4 case语句企业级生产案例
9.5 case条件语句的Linux系统脚本范例
9.6 本章小结
第10章 while循环和until循环的应用实践
10.1 当型和直到型循环语法
10.2 当型和直到型循环的基本范例
10.3 让Shell脚本在后台运行的知识
10.4 企业生产实战:while循环语句实践
10.5 while循环按行读文件的方式总结
10.6 企业级生产高级实战案例
10.7 本章小结
第11章 for和select循环语句的应用实践
11.1 for循环语法结构
11.2 for循环语句的基础实践
11.3 for循环语句的企业级案例
11.4 for循环语句的企业高级实战案例
11.5 Linux系统产生随机数的6种方法
11.6 select循环语句介绍及语法
11.7 select循环语句案例
第12章 循环控制及状态返回值的应用实践
12.1 break、continue、exit、return的区别和对比
12.2 break、continue、exit功能执行流程图
12.3 break、continue、exit、return命令的基础示例
12.4 循环控制及状态返回值的企业级案例
第13章 Shell数组的应用实践
13.1 Shell数组介绍
13.2 Shell数组的定义与增删改查
13.3 Shell数组脚本开发实践
13.4 Shell数组的重要命令
13.5 Shell数组相关面试题及高级实战案例
13.6 合格运维人员必会的脚本列表
第14章 Shell脚本开发规范
14.1 Shell脚本基本规范
14.2 Shell脚本变量命名及引用变量规范
14.3 Shell函数的命名及函数定义规范
14.4 Shell脚本(模块)高级命名规范
14.5 Shell脚本的代码风格
14.6 Shell脚本的变量及文件检查规范
第15章 Shell脚本的调试
15.1 常见Shell脚本错误范例
15.2 Shell脚本调试技巧
15.3 本章小结
第16章 Shell脚本开发环境的配置和优化实践
16.1 使用vim而不是vi编辑器
16.2 配置文件.vimrc的重要参数介绍
16.3 让配置文件.vimrc生效
16.4 使用vim编辑器进行编码测试
16.6 vim配置文件的代码折叠功能
16.7 vim编辑器批量缩进及缩进调整技巧
16.8 其他vim配置文件功能说明
16.9 vim编辑器常用操作技巧
第17章 Linux信号及trap命令的企业应用实践
17.1 信号知识
17.2 使用trap控制信号
17.3 Linux信号及trap命令的生产应用案例
第18章 Expect自动化交互式程序应用实践
18.1 Expect介绍
18.2 安装Expect软件
18.3 小试牛刀:实现Expect自动交互功能
18.4 Expect程序自动交互的重要命令及实践
18.5 Expect程序变量
18.6 Expect程序中的if条件语句
18.7 Expect中的关键字
18.8 企业生产场景下的Expect案例
18.9 本章小节
第19章 企业Shell面试题及企业运维实战案例
19.1 企业Shell面试题案例
19.2 Shell经典程序案例:哄老婆和女孩的神器
第20章 子Shell及Shell嵌套模式知识应用
20.1 子Shell的知识及实践说明
20.2 子Shell在企业应用中的“坑”
20.3 Shell调用脚本的模式说明
20.4 Shell调用脚本的3种不同实践方法
20.5 Shell调用脚本3种不同模式的应用场景
附录 Linux重要命令汇总
您当前的等级为
登录后免费下载登录
小黑屋反思中,不准下载!
评论后刷新页面下载评论
支付¥以后下载
请先登录
您今天的下载次数(次)用完了,请明天再来
支付积分以后下载立即支付
支付以后下载立即支付
您当前的用户组不允许下载升级会员
您已获得下载权限
您可以每天下载资源次,今日剩余次
免责申明:
1. 本站分享的所有书籍均来源于自互联网,我们只进行收集整理,并不对书籍内容进行更改。
2. 部分书籍中可能有书籍压制者放置的广告,这并不是本站所为,请注意甄别。
3. 我们分享这些书籍,纯粹是出于知识分享的热情,以及对互联网分享精神的高度认同和践行,不以盈利为目的。
4. 本站分享的所有书籍,仅供个人学习研究使用,请勿用于任何商业用途,否则产生的一切法律纠纷与本站无关。
5. 如果这些书籍让你有所收获,在条件允许的情况下,请一定购买正版书籍,这是对创作者最好的支持。
6. 如果您是此书籍的版权所有者,且您不希望此作品出现在本站,请联系我们,我们将在收到您的请求后48小时内予以删除。