《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命令
参考书目
系统安装与重装从入门到精通-(附光盘) 本书特色 恒盛杰资讯编著的《系统安装与重装从入门到精通(附光盘)》涵盖了安装系统前不得不知道的事、硬盘分区和格式化、安装...
《对比Excel,轻松学习SQL数据分析》内容简介:本书是《对比Excel,轻松学习Python数据分析》的姊妹篇,同样采用对比的方法,降低学
Java 数据库高级编程宝典 本书特色 内容丰富、权威,详尽细致地介绍了软件开发环境的搭建方法,通过完整的网络相册和留言板实例展现了JSP+SServlet+J...
《伟大的声音》内容简介:《伟大的声音:演讲的力量》由俞敏洪主编,精心挑选了对自己人生影响颇深的多位中外名人演讲,如孙中山、徐
创意城市:如何打造都市创意生活圈,ISBN:9787302210047,作者:(英)兰德利著,杨幼兰译目录 中文版序《创意城市》的缘起与未
《看图学八卦掌(视频学习版)》内容简介:本书首先对八卦掌的由来、特点、练习要点和动作进行了介绍,接着对包括掌法、步法、桩功
《明朝那些事儿增补版:第九部(新版)》内容简介:《明朝那些事儿》第九部,主要讲述了崇祯二年到明亡十六年间的历史。辽东关外,
《股民的眼泪》内容简介:股市惨淡,跌跌不休,不少股民暗自垂泪,究竟如何避开股市的地雷? 张化桥继续敢言作风,在新作中大胆揭示
《心学之思》内容简介:有关王阳明研究的一部佳作。作者从一个新的视野出发,对阳明心学展开多维度的阐释,思路开阔,创见颇多,具
《这就是财务管理:世界500强CFO的独家分享》内容简介:本书财务工作涉及企业运营的方方面面,长期以来,无论是财务工作者还是企业
《走向人文关怀的高中美术校本课程开发》内容简介:本书运用后现代课程理论和建构主义学习理论,深入探讨了如何开发凸显人文关怀的
《深入理解JavaScript特性》内容简介:本书旨在让读者轻松学习JavaScript的新进展,包括ES6及后续更新。书中提供了大量实用示例,以
S4A互动程序设计 本书特色 S4A(Scratch for Arduino)是一款由西班牙的Citilab团队在Scratch基础上开发而成的软件,它趣味性强...
非常网管——网络基础 内容简介 本书使用通俗易懂的语言,并通过大量的示例,全面系统地介绍了计算机网络的相关知识。本书的主要内容包括:计算机网络基础知识、OSI和...
PraiseforFundamentalsofWiMAX"ThisbookisoneofthemostcomprehensivebooksIhavereview...
《程控交换与宽带交换》以程控交换、ATM交换到MPLS交换的技术发展为线索,对程控交换和宽带交换进行介绍。重点介绍程控交换技术和
《基于YANG的可编程网络》内容简介:整个网络行业正面临着自动化的压力,以实现规模化和更快的发展,本书介绍如何利用YANG来释放网
PowerPoint 2007演示文稿制作经典教程 内容简介 本书由国内一线office办公软件教育与培训专家编著,主要遵循powerpoint 2007教学大...
自然语言处理技术基础 本书特色 本书包括了三个方面的内容。**部分介绍基于规则的自然语言处理技术,分别从语法和语义两个层面入手。第二部分介绍基于统计的自然语言处...
本书阐述了关系模型背后的根本原则,这些原则也是所有数据库(后备应用软件)的应用基础,因为这些原则,今天的计算机世界才得以