当前位置首页 > 百科> 正文

Linux Shell编程从入门到精通(第2版)

2019-07-12 02:34:55 百科
Linux Shell编程从入门到精通(第2版)

Linux Shell编程从入门到精通(第2版)

《Linux Shell编程从入门到精通(第2版)》是2015年人民邮电出版社出版的图书,作者是张昊、程国钢。

本书结合大量的示例,系统、全面地介绍了bash Shell 脚本编程的语法、命令、技巧、调试等内容,在书中还有很多练习可以引导读者思考,力求使读者掌握Linux bash Shell 编程的所有特性。

基本介绍

  • 书名:Linux Shell编程从入门到精通(第2版)
  • ISBN:978-7-115-40004-8
  • 出版社:人民邮电出版社
  • 出版时间:2015-09

内容简介

本书由浅入深、循序渐进地详细讲解了LinuxShell编程的基本知识。这些基本知识包括Shell编程的基本知识、文本处理的工具和方法、正则表达式、Linux系统知识等。
本书旨在通过理清Linux Shell编程的脉络,从基本概念着手,以丰富、实用的範例作为辅助,使读者能够深入浅出的学习LinuxShell编程。
本书的每一章节都配有综合案例,这些综合案例不仅可以使读者複习前面所学的知识,还可以增加开发项目的经验。这些案例实用性很强,许多代码可以直接套用到Linux系统管理中。
本书配有全程录像的视频讲解光碟,读者可以将视频和书结合起来学习,可以更快、更好地掌握Linux Shell编程技术。
本书适合于Linux Shell编程的初学者,有一定LinuxShell编程基础,但还需要进一步提高的人阅读。本书对于有一定编程经验的程式设计师也有很好的参考价值。

图书目录

第1章 初识Shell程式
1.1 第一道菜
1.2 如何运行程式
1.2.1 选婿:位于第一行的#!
1.2.2 找茬:程式执行的差异
1.2.3 shell的命令种类
1.3 Linux Shell的变数
1.3.1 变数
1.3.2 用echo输出变数
1.3.3 环境变数的相关操作
1.3.4 shell中一些常用环境变数
1.4 Linux Shell是解释型语言
1.4.1 编译型语言与解释型语言
1.4.2 Linux Shell编程的优势
1.5 小结
第2章 Shell编程基础
2.1 向脚本传递参数
2.1.1 Shell脚本的参数
2.1.2 参数的用途
2.2 I/O重定向
2.2.1 标準输入、标準输出与标準错误
2.2.2 管道与重定向
2.2.3 档案描述符
2.2.4 特殊档案的妙用
2.3 基本文本检索
2.4 UNIX/Linux系统的设计与shell 编程
2.4.1 一切皆档案
2.4.2 UNIX编程的基本原则
2.5 小结
第3章 编程的基本元素
3.1 再识变数
3.1.1 用户变数
3.1.2 位置变数
3.1.3 环境变数
3.1.4 启动档案
3.2 函式
3.2.1 函式定义
3.2.2 函式的参数和返回值
3.3 条件控制与流程控制
3.3.1 if/else语句
3.3.2 退出状态
3.3.3 退出状态与逻辑操作
3.3.4 条件测试
3.4 循环控制
3.4.1 for循环
3.4.2 while/until循环
3.4.3 跳出循环
3.4.4 循环实例
3.5 小结
第4章 正则表达式
4.1 什幺是正则表达式
4.1.1 正则表达式的广泛套用
4.1.2 如何学习正则表达式
4.1.3 如何实践正则表达式
4.2 正则基础
4.2.1 元字元
4.2.2 单个字元
4.2.3 单个表达式匹配多个字元
4.2.4 文本匹配锚点
4.2.5 运算符优先权
4.2.6 更多差异
4.3 正则表达式的套用
4.3.1 扩展
4.3.2 案例研究:罗马数字
4.3.3 案例研究:解析电话号码
4.4 小结
第5章 基本文本处理
5.1 排序文本
5.1.1 sort命令的行排序
5.1.2 sort命令的栏位排序
5.1.3 sort小结
5.2 文本去重
5.3 统计文本行数、字数以及字 符数
5.4 列印和格式化输出
5.4.1 使用pr列印档案
5.4.2 使用fmt命令格式化文本
5.4.3 使用fold限制文本宽度
5.5 提取文本开头和结尾
5.6 栏位处理
5.6.1 栏位的使用案例
5.6.2 使用cut取出栏位
5.6.3 使用join连线栏位
5.6.4 其他栏位处理方法
5.7 文本替换
5.7.1 使用tr替换字元
5.7.2 其他选择
5.8 一个稍微複杂的例子
5.8.1 实例描述
5.8.2 取出记录的ip栏位和id栏位
5.8.3 将记录按照IP顺序排序
5.8.4 使用uniq统计重複IP
5.8.5 根据访问次数进行排序
5.8.6 提取出现次数最多的100条
5.9 小结
第6章 档案和档案系统
6.1 档案
6.1.1 列出档案
6.1.2 档案的类型
6.1.3 档案的许可权
6.1.4 档案的修改时间
6.2 寻找档案
6.2.1 find命令的参数
6.2.2 遍历档案
6.3 比较档案
6.3.1 使用comm比较排序后档案
6.3.2 使用diff比较档案
6.3.3 其他文本比较方法
6.4 档案系统
6.4.1 什幺是档案系统
6.4.2 档案系统与磁碟分区
6.4.3 Linux分区格式的选择与安全性
6.4.4 档案系统与目录树
6.4.5 档案系统的创建与挂载
6.5 小结
第7章 流编辑
7.1 什幺是sed
7.1.1 挑选编辑器
7.1.2 sed的版本
7.2 sed示例
7.2.1 sed的工作方式
7.2.2 sed工作的地址範围
7.2.3 规则表达式
7.3 更强大的sed功能
7.3.1 替换
7.3.2 地址範围的迷惑
7.4 组合命令
7.4.1 组合多条命令
7.4.2 将多条命令套用到一个地址範围
7.5 实际的例子
7.6 sed实践
7.6.1 第一步 替换名字
7.6.2 第二步 删除前3行
7.6.3 第三步 显示5~10行
7.6.4 第四步 删除包含Lane的行
7.6.5 第五步 显示生日在November-December之间的行
7.6.6 第六步 把3个星号(***)添加到以Fred开头的行
7.6.7 第七步 用JOSE HASRETIRED取代包含Jose的行
7.6.8 第八步 把Popeye的生日改成11/14/46
7.6.9 第九步 删除所有空白行
7.6.10 第十步 脚本
7.7 小结
第8章 文本处理利器awk
8.1 来个案例
8.2 基本语法
8.2.1 多个栏位
8.2.2 使用其他栏位分隔设定
8.3 AWK语言特性
8.3.1 AWK代码结构
8.3.2 变数与数组
8.3.3 算术运算和运算符
8.3.4 判断与循环
8.3.5 多条记录
8.4 用户自定义函式
8.4.1 自定义函式格式
8.4.2 引用传递和值传递
8.4.3 递归调用
8.5 字元串与算术处理
8.5.1 格式化输出
8.5.2 字元串函式
8.5.3 算术函式
8.6 案例分析
8.6.1 生成数据报表
8.6.2 多档案联合处理
8.6.3 检验passwd格式的正确性
8.6.4 sed/awk单行脚本
8.7 小结
第9章 进程
9.1 进程的含义与查看
9.1.1 理解进程
9.1.2 创建进程
9.1.3 查看进程
9.1.4 进程的属性
9.2 进程管理
9.2.1 进程的状态
9.2.2 shell命令的执行
9.2.3 进程与任务调度
9.3 信号
9.3.1 信号的基本概念
9.3.2 产生信号
9.4 Linux的第一个进程init
9.5 案例分析:Linux系统中管道的实现
9.6 调度系统任务
9.6.1 任务调度的基本介绍
9.6.2 调度重複性系统任务(cron)
9.6.3 使用at命令
9.7 进程的视窗/proc
9.7.1 proc——虚拟档案系统
9.7.2 查看/proc的档案
9.7.3 从proc获取信息
9.7.4 通过/proc与核心互动
9.8 Linux的执行绪简介
9.8.1 Linux执行绪的定义
9.8.2 Pthread执行绪的使用场合
9.8.3 Linux进程和执行绪的发展
9.9 小结
第10章 超级工具
10.1 不同的shell
10.1.1 修改登录shell和切换shell
10.1.2 选择shell
10.2 SSH
10.2.1 SSH的安全验证机制
10.2.2 使用SSH登录远程主机
10.2.3 OpenSSH密钥管理
10.2.4  配置SSH
10.2.5 使用SSH工具套装拷贝档案
10.3 screen工具
10.3.1 任务退出的元兇:SIGHUP信号
10.3.2 开始使用screen
10.3.3 screen常用选项
10.3.4 实例:ssh+screen管理远程会话
10.4 文本编辑工具Vim
10.4.1 为什幺选择Vim
10.4.2 从何处获取Vim
10.4.3 Vim的工作模式
10.4.4 首次接触:step by step
10.4.5 滑鼠的移动
10.4.6 基本编辑指令
10.4.7 複製(yank)
10.4.8 搜寻、替换
10.5 小结
第11章 Linux
声明:此文信息来源于网络,登载此文只为提供信息参考,并不用于任何商业目的。如有侵权,请及时联系我们:baisebaisebaise@yeah.net