《Shell脚本学习指南》将告诉你这些有关UNIX主流工具的知识。除此之外,《Shell脚本学习指南》还会帮助你解决UNIX命令与标准的差异。
作者熟知UNIx程序使用的基本技巧与操作上细微的差异。他们不但会告诉你如何构建一个绝佳的脚本,还会教你如何避免落入让你功亏一篑的陷阱。有了《Shell脚本学习指南》,你可以节省很多力气。
我们要学习的不只是如何写出有用的Shell脚本,你还得了解如何迅速、确实地定制Shell,让程序的可移植性达到最佳状态,脱离对特定系统的依赖。这些技巧对任何操作与维护UNIX及Linux系统的人而言都很重要。《Shell脚本学习指南》所提供的知识,将可以帮助你掌握基本的Shell脚本编写技巧。Shell脚本编程(scripting)的技巧永远不会过时:它们可以让UNIX充分发挥其真实的潜能。对uNIx的用户与系统管理者而言,编写shell脚本是必须的工作,它可以让你快速地控制与定制任何UNIX系统的强大功能。有了Shell脚本,你可以结合基本的UNIX文本与文件处理命令来消化数据,以及自动化重复的工作。一旦你对Shell脚本的编写掌控自如,在接下来的几年,这些技巧将对你相当有帮助。
编写shell脚本所需要的不只是对shell语言的认识,还必须熟知单个的uNIx程序:你必须知道每个程序为什么会放在那儿,以及如何使用该程序或如何将其与其他程序结合。
序
前言
第1章 背景知识
1.1 UNIX简史
1.2 软件工具的原则
1.3 小结
第2章 入门
2.1 脚本编程语言与编译型语言的差异
2.2 为什么要使用Shell脚本
2.3 一个简单的脚本
2.4 自给自足的脚本:位于第一行的#!
2.5 Shell的基本元素
2.6 访问Shell脚本的参数
2.7 简单的执行跟踪
2.8 国际化与本地化
2.9 小结
第3章 查找与替换
3.1 查找文本
3.2 正则表达式
3.3 字段处理
3.4 小结
第4章 文本处理工具
4.1 排序文本
4.2 删除重复
4.3 重新格式化段落
4.4 计算行数、字数以及字符数
4.5 打印
4.6 提取开头或结尾数行
4.7 小结
第5章 管道的神奇魔力
5.1 从结构化文本文件中提取数据
5.2 针对Web的结构型数据
5.3 文字解谜好帮手
5.4 单词列表
5.5 标签列表
5.6 小结
第6章 变量、判断、重复动作
6.1 变量与算术
6.2 退出状态
6.3 case 语句
6.4 循环
6.5 函数
6.6 小结
第7章 输入/输出、文件与命令执行
7.1 标准输入、标准输出与标准错误输出
7.2 使用read读取行
7.3 关于重定向
7.4 printf的完整介绍
7.5 波浪号展开与通配符
7.6 命令替换
7.7 引用
7.8 执行顺序与eval
7.9 内建命令
7.10 小结
第8章 产生脚本
8.1 路径查找
8.2 软件构建自动化
8.3 小结
第9章 awk的惊人表现
9.1 awk命令行
9.2 awk程序模型
9.3 程序元素..
9.4 记录与字段
9.5 模式与操作
9.6 在awk里的单行程序
9.7 语句
9.8 用户定义函数
9.9 字符串函数
9.10 数值函数
9.11 小结
第10章 文件处理
10.1 列出文件
10.2 使用touch更新修改时间
10.3 临时性文件的建立与使用
10.4 寻找文件
10.5 执行命令:xargs
10.6 文件系统的空间信息
10.7 比较文件
10.8 小结
第11章 扩展实例:合并用户数据库
11.1 问题描述
11.2 密码文件
11.3 合并密码文件
11.4 改变文件所有权
11.5 其他真实世界的议题
11.6 小结
第12章 拼写检查
12.1 spell程序
12.2 最初的UNIX拼写检查原型
12.3 改良的ispell与aspell
12.4 在awk内的拼写检查程序
12.5 小结
第13章 进程
13.1 进程建立
13.2 进程列表
13.3 进程控制与删除
13.4 进程系统调用的追踪
13.5 进程账
13.6 延迟的进程调度
13.7 /proc文件系统
13.8 小结
第14章 Shell可移植性议题与扩展
14.1 迷思
14.2 bash的shopt命令
14.3 共通的扩展
14.4 下载信息
14.5 其他扩展的Bourne式Shell
14.6 Shell版本
14.7 Shell初始化与终止
14.8 小结
第15章 安全的Shell脚本:起点
15.1 安全性Shell脚本提示
15.2 限制性Shell
15.3 特洛伊木马
15.4 为Shell脚本设置setuid:坏主意
15.5 ksh93与特权模式
15.6 小结
附录A 编写手册页
附录B 文件与文件系统
附录C 重要的UNIX命令
参考书目
游戏透视 本书特色 《游戏透视(动漫游戏专业系列教材)》由浅入深、详细地讲述了绘画透视的基本概念以及不同的绘画透视种类,从动漫与游戏制作的流程出发,配合大量精美...
魏玛时期的包豪斯,是20世纪最重要的建筑、设计及艺术学校之一,莫霍利-纳吉是其个性鲜明的教员团队中的一员。他不仅是欧洲前卫运
WebWorkhelpsdevelopersbuildwell-designedapplicationsquicklybycreatingre-usable,m...
《互联网产品(Web/移动Web/APP):视觉设计(风格篇)》旨在介绍Web及移动Web/APP等互联网产品界面风格的知识与方法。新兴的互联
《公案中的世态》内容简介:公案小说是中国古典小说的一种,由宋话本公案类演义而成,盛行于明清。本书对公案小说进行了较为全面、
《深入实践C++模板编程》内容简介:C++模板编程领域的经典著作,由资深C++开发工程师撰写。本书以透彻分析原理为前提,深入讲解了模
计算机网络释疑与习题解答 内容简介 《计算机网络释疑与习题解答》是《计算机网络》第5版的配套参考书。全书共10章,每一章都与《计算机网络》第5版的内容相对应,有...
《电影与抗战》内容简介:本书为中国电影史研究专著,以十四年抗战期间电影的发展为整体考察对象,贯穿起局部抗战和全面抗战时期电
假如,给你一间老房子,你要用它做什么?咖啡馆、民宿、饮食空间、小酒馆……在本书中,你或许可以寻找到答案。30个台湾老屋的再
Thisbookprovidesapracticalapproachtounderstandingimplementationsofnon-strictfunc...
《国学研究(第46卷)》内容简介:本书为袁行霈先生主编、北京大学国学研究院主办之辑刊,每年两卷,此为第46卷。本期共收录相关领
《驾驭独角兽》内容简介:独角兽像中国传统文化中的龙一样是人类丰富想象中最神奇的动物之一。种子轮基金Cowboy Venture的创始人Ai
MATLAB在时间序列分析中的应用 本书特色 本书简明扼要地介绍了时间序列及其相关领域的基本概念和基本理论,对ARMA序列预测、时间序列的统计分析、时间序列的时...
《完美主义扼杀效率》内容简介:工作的目标是成果,而不是完美! 33个完美主义思维误区! 日本上班族人手一本!做出成果只需抓住20
《流浪生死书》内容简介:人生实苦,要么是身体的病,要么是精神上的痛。人,无法躲避,只有超越。有的人选择文学、有的人选择艺术
在这个点击率就是生命的时代,高可用是不可少的。本书完整讲述了Nginx服务器的各种技术细节以及安装、部署、运维等方面的内容。《
《Julia设计模式》内容简介:设计模式是开发可重用和可维护代码的基本技术。它提供了一套经过验证的解决方案,使开发人员可以快速解
《历史的个性:兵家》内容简介:白起、王翦、廉颇、李牧、孙武、孙膑、卫青、李广…… 他们都是叱咤疆场的军事统帅, 连百万之众,
《中国制造业重点领域技术创新绿皮书—技术路线图(2019)》内容简介:本书(以下简称“技术路线图”)围绕建设制造强国的战略任务
《STM32开发实战:LabVIEW卷》内容简介:作为学习LabVIEW与32位微处理器STM32的入门级教材,本书从LabVIEWforARM嵌入式软件架构入...