描述
开 本: 16开纸 张: 胶版纸包 装: 平装是否套装: 否国际标准书号ISBN: 9787302378624丛书名: Linux典藏大系
结合近700个应用示例,全面、系统地介绍了Shell(Bash)脚本编程的精华
视频讲解:专门录制了11小时高清配套教学视频,并赠送15小时Shell编程入门视频
内容全面:详解近50个Linux常用命令,并系统地介绍了Shell脚本编程的精华
循序渐进:从*基本的Linux常用命令开始讲解,逐步深入到Linux Shell脚本编程
讲解详细:配合实例对Shell脚本编程的概念、语法、命令、技巧和难点做了详细讲解
实例丰富:列举了近700个应用示例,便于读者掌握各个知识点在实际环境中的应用
经验传授:给出了大量的经验和技巧,尽力消除读者学习时会遇到的各种障碍
Linux精品图书推荐(请点丛书链接查看)
《Linux典藏大系:Linux Shell命令行及脚本编程实例详解》共15章,分为两篇。主要内容包括:Linux 及Linux Shell简介、初识Linux Shell、常用Shell (Bash)命令、Shell命令进阶、Shell编程基础、 Shell的条件执行、Bash循环、Shell函数、正则表达 式、脚本输入处理、Shell重定向、管道和过滤器、 捕获、sed和awk,以及其他Linux Shell种类介绍。
《Linux典藏大系:Linux Shell命令行及脚本编程实例详解》使用了大量的实例详细地介绍了Bash的语法 及各种技巧,并以循序渐进的方式讲解了Linux Shell(Bash)的各种特性,让读者能够迅速上手, 并能学以致用。对于初次接触Linux Shell的读者, 《Linux典藏大系:Linux Shell命令行及脚本编程实例详解》是一本很好的自学教材;对于接触过Linux Shell的读者,《Linux典藏大系:Linux Shell命令行及脚本编程实例详解》可以作为进阶读物或随时查阅的 技术手册;另外,《Linux典藏大系:Linux Shell命令行及脚本编程实例详解》也可以作为高等学校相关专业 的教材和各类培训学校的教材。
快速了解本书内容
Linux及Linux Shell简介
初识Linux Shell
常用Shell(Bash)命令
Shell命令进阶
Shell编程基础
Shell的条件执行
Bash循环
Shell函数
正则表达式
Shell重定向
管道和过滤器
捕获
sed和awk
其他Linux Shell种类介绍
第1章 Linux及Linux Shell简介
1.1 关于Linux
1.1.1 什么是Linux
1.1.2 谁创建了Linux
1.1.3 Linux在日常生活中的使用
1.1.4 Linux Kernel是什么
1.1.5 Linux的理念
1.2 什么是Linux Shell
1.3 Shell的种类
1.4 怎样使用Shell
1.5 Shell脚本是什么
1.6 为什么使用Shell脚本
1.7 实例:创建你的个Shell脚本
1.8 小结
第2章 初识Linux Shell
2.1 Bash Shell
2.1.1 Bash简介
2.1.2 Bash提供的改进
2.2 Shell在Linux环境中的角色
2.2.1 与登录Shell相关的文件
2.2.2 Bash启动脚本
2.2.3 实例:定制自己的Bash登录脚本
2.2.4 Bash退出脚本
2.2.5 实例:定制自己的Bash退出脚本
2.2.6 有效的登录Shell的路径
2.3 Shell中的变量
2.3.1 Shell中变量的类型
2.3.2 实例:如何定义变量和给变量赋值
2.3.3 变量命名规则
2.3.4 实例:使用echo和printf打印变量的值
2.3.5 变量的引用
2.3.6 实例:export语句的使用
2.3.7 实例:如何删除变量
2.3.8 实例:如何检查变量是否存在
2.4 Shell环境进阶
2.4.1 实例:回调命令历史
2.4.2 实例:Shell中的扩展
2.4.3 实例:创建和使用别名
2.4.4 实例:修改Bash提示符
2.4.5 实例:设置Shell选项
2.5 小结
第3章 常用Shell(Bash)命令
3.1 查看文件和目录
3.1.1 ls命令实例:列出文件名和目录
3.1.2 cat命令实例:连接显示文件内容
3.1.3 less、more命令实例:分屏显示文件
3.1.4 head命令实例:显示文件头部
3.1.5 tail命令实例:显示文件尾部
3.1.6 file命令实例:查看文件类型
3.1.7 wc命令实例:查看文件统计信息
3.1.8 find命令实例:查找文件或目录
3.2 操作文件和目录
3.2.1 touch命令实例:创建文件
3.2.2 mkdir命令实例:创建目录
3.2.3 cp命令实例:复制文件或目录
3.2.4 ln命令实例:链接文件或目录
3.2.5 mv命令实例:重命名文件或目录
3.2.6 rm命令实例:删除文件或目录
3.3 管理文件或目录权限
3.3.1 ls -l:显示文件和目录权限
3.3.2 chmod命令实例:修改权限
3.3.3 chown、chgrp命令实例:修改文件所有者和用户组
3.3.4 设置setuid和setgid权限位实例:设置用户和组权限位
3.4 文本处理
3.4.1 sort命令实例:文本排序
3.4.2 uniq命令实例:文本去重
3.4.3 tr命令实例:替换或删除字符
3.4.4 grep命令实例:查找字符串
3.4.5 diff命令实例:比较两个文件
3.5 其他常用命令
3.5.1 hostname命令实例:查看主机名
3.5.2 w、who命令实例:列出系统登录的用户
3.5.3 uptime命令实例:查看系统运行时间
3.5.4 uname命令实例:查看系统信息
3.5.5 date命令实例:显示和设置系统日期和时间
3.5.6 id命令实例:显示用户属性
3.6 小结
第4章 Shell命令进阶
4.1 文件处理和归档
4.1.1 paster命令实例:合并文件
4.1.2 dd命令实例:备份和拷贝文件
4.1.3 gzip、bzip2命令实例:压缩和归档文件
4.1.4 gunzip、bunzip2命令实例:解压缩文件
4.1.5 tar命令实例:打包和解包文件
4.2 监测和管理磁盘
4.2.1 mount、umount命令实例:挂载和卸载存储介质
4.2.2 df命令实例:报告文件系统磁盘空间利用率
4.2.3 du命令实例:评估文件空间利用率
4.3 后台执行命令
4.3.1 cron、crontab命令实例:执行计划任务
4.3.2 at命令实例:在指定时间执行命令
4.3.3 &控制操作符实例:将任务放在后台运行
4.3.4 nohup命令实例:运行一个对挂起免疫的命令
4.4 小结
…第2篇 Shell 脚本编程
第5章 Shell编程基础
5.1 Shell脚本的行“#!”(Shebang)
5.2 Shell中的注释
5.3 实例:如何设置脚本的权限和执行脚本
5.4 Shell变量进阶
5.4.1 Bash中的参数扩展
5.4.2 Bash的内部变量
5.4.3 Bash中的位置参数和特殊参数
5.4.4 实例:使用declare指定变量的类型
5.4.5 Bash中的数组变量
5.5 Shell算术运算
5.5.1 Bash的算术运算符
5.5.2 数字常量
5.5.3 使用算术扩展和let进行算术运算
5.5.4 实例:使用expr命令
5.6 退出脚本
5.6.1 退出状态码
5.6.2 实例:使用exit命令
5.7 实例:调试脚本
5.8 Shell脚本编程风格
5.9 小结
第6章 Shell的条件执行
6.1 条件测试
6.1.1 实例:使用test命令
6.1.2 if结构的语法格式
6.1.3 实例:if…else…fi语句
6.1.4 实例:嵌套的if/else语句
6.1.5 实例:多级的if…elif…else…fi
6.2 条件执行
6.2.1 实例:逻辑与“&&”
6.2.2 实例:逻辑或“||”
6.2.3 实例:逻辑非“!”
6.3 case语句实例
6.4 小结
第7章 Bash循环
7.1 for循环
7.1.1 for循环语法
7.1.2 实例:嵌套for循环语句
7.2 while循环
7.2.1 while循环语法
7.2.2 实例:定义无限while循环
7.3 until循环语句实例
7.4 select循环语句实例
7.5 循环控制
7.5.1 实例:break语句
7.5.2 实例:continue语句
7.6 小结
第8章 Shell函数
8.1 函数的定义
8.2 函数的参数、变量与返回值
8.2.1 实例:向函数传递参数
8.2.2 本地变量
8.2.3 实例:使用return命令
8.2.4 实例:函数返回值测试
8.3 函数的调用
8.3.1 实例:在Shell命令行调用函数
8.3.2 实例:在脚本中调用函数
8.3.3 实例:从函数文件中调用函数
8.3.4 实例:递归函数调用
8.4 实例:将函数放在后台运行
8.5 小结
第9章 正则表达式
9.1 什么是正则表达式
9.1.1 定义
9.1.2 正则表达式类型
9.1.3 POSIX字符类
9.1.4 Bash正则表达式比较操作符
9.2 正则应用基础
9.2.1 实例:使用句点.匹配单字符
9.2.2 实例:使用插入符号^匹配
9.2.3 实例:使用美元符$匹配
9.2.4 实例:使用星号*匹配
9.2.5 实例:使用方括号[ ]匹配
9.2.6 实例:使用问号?匹配
9.2.7 实例:使用加号+匹配
9.3 小结
第10章 脚本输入处理
10.1 参数处理
10.1.1 实例:使用case语句处理命令行参数
10.1.2 实例:使用shift命令处理命令行参数
10.1.3 实例:使用for循环读取多个参数
10.1.4 实例:读取脚本名
10.1.5 实例:测试命令行参数
10.2 选项处理
10.2.1 实例:使用case语句处理命令行选项
10.2.2 实例:使用getopts处理多命令行选项
10.2.3 实例:使用getopt处理多命令行选项
10.3 获得用户输入
10.3.1 实例:基本的读取
10.3.2 实例:输入超时
10.3.3 实例:隐藏方式读取
10.3.4 实例:从文件中读取
10.4 小结
第11章 Shell重定向
11.1 输入和输出
11.1.1 标准输入
11.1.2 标准输出
11.1.3 标准错误
11.2 重定向
11.2.1 文件重定向
11.2.2 实例:从文件输入
11.2.3 实例:从文本或字符串输入
11.2.4 实例:空文件创建
11.2.5 实例:/dev/null丢弃不需要的输出
11.2.6 实例:标准错误重定向
11.2.7 实例:标准输出重定向
11.2.8 实例:标准错误和标准输出同时重定向
11.2.9 实例:追加重定向输出
11.2.10 实例:在单命令行进行标准输入输出重定向
11.3 文件描述符
11.3.1 实例:使用exec命令
11.3.2 实例:指定用于输入的文件描述符
11.3.3 实例:指定用于输出的文件描述符
11.3.4 实例:关闭文件描述符
11.3.5 实例:打开用于读和写的文件描述符
11.3.6 实例:在同一脚本中使用exec进行输入和输出重定向
11.4 小结
第12章 管道和过滤器
12.1 管道
12.1.1 操作符“|”和“>”之间的区别
12.1.2 为什么使用管道
12.1.3 实例:使用管道连接程序
12.1.4 实例:管道中的输入重定向
12.1.5 实例:管道中的输出重定向
12.2 过滤器
12.2.1 实例:在管道中使用awk命令
12.2.2 实例:在管道中使用cut命令
12.2.3 实例:在管道中使用grep命令
12.2.4 实例:在管道中使用tar命令
12.2.5 实例:在管道中使用head命令
12.2.6 实例:在管道中使用paste命令
12.2.7 实例:在管道中使用sed命令
12.2.8 实例:在管道中使用sort命令
12.2.9 实例:在管道中使用split命令
12.2.10 实例:在管道中使用strings命令
12.2.11 实例:在管道中使用tail命令
12.2.12 实例:在管道中使用tee命令
12.2.13 实例:在管道中使用tr命令
12.2.14 实例:在管道中使用uniq命令
12.2.15 实例:在管道中使用wc命令
12.3 小结
第13章 捕获
13.1 信号
13.1.1 Linux中的信号
13.1.2 信号的名称和值
13.1.3 Bash中的信号
13.2 进程
13.2.1 什么是进程
13.2.2 前台进程和后台进程
13.2.3 进程的状态
13.2.4 实例:怎样查看进程
13.2.5 实例:向进程发送信号
13.2.6 关于子Shell
13.3 捕获
13.3.1 trap语句
13.3.2 实例:使用trap语句捕获信号
13.3.3 实例:移除捕获
13.4 小结
第14章 sed和awk
14.1 sed编辑器基础
14.1.1 sed简介
14.1.2 sed的模式空间
14.2 基本的sed编辑命令
14.2.1 追加、更改、插入编辑命令
14.2.2 删除编辑命令
14.2.3 替换编辑命令
14.2.4 打印编辑命令
14.2.5 打印行号编辑命令
14.2.6 读取下一行编辑命令
14.2.7 读和写文件编辑命令
14.2.8 退出编辑命令
14.3 sed命令实例
14.3.1 实例:向文件中添加或插入行
14.3.2 实例:更改文件中指定的行
14.3.3 实例:删除文件中的行
14.3.4 实例:替换文件中的内容
14.3.5 实例:打印文件中的行
14.3.6 实例:打印文件中的行号
14.3.7 实例:从文件中读取和向文件中写入
14.4 sed与Shell
14.4.1 实例:在sed中使用Shell变量
14.4.2 实例:从sed输出中设置Shell变量
14.5 awk基础
14.5.1 awk简介
14.5.2 awk基本语法
14.5.3 个awk命令
14.5.4 使用awk打印指定的列
14.5.5 从awk程序文件读取awk指令
14.5.6 awk的BEGIN和END块
14.5.7 awk中使用正则表达式
14.5.8 awk的表达式和块
14.5.9 awk的条件语句
14.5.10 awk中的变量和操作符
14.5.11 awk中的特殊变量
14.5.12 awk中的循环结构
14.5.13 awk中的数组
14.6 awk与Shell
14.6.1 实例:在awk中使用Shell变量
14.6.2 实例:从awk命令的输出中设置Shell变量
14.7 awk命令实例
14.7.1 实例:使用awk编写字符统计工具
14.7.2 实例:使用awk程序统计文件的总列数
14.7.3 实例:使用awk自定义显示文件的属性信息
14.7.4 实例:使用awk显示ASCII字符
14.7.5 实例:使用awk来获取进程号
14.8 小结
第15章 其他Linux Shell种类介绍
15.1 C Shell
15.1.1 csh简介
15.1.2 csh的特性
15.1.3 csh的内部变量
15.1.4 csh的内部命令
15.1.5 tcsh在csh基础上的新特性
15.2 Korn Shell
15.2.1 ksh简介
15.2.2 ksh的特性
15.2.3 ksh的内部变量
15.2.4 ksh的内部命令
15.2.5 增强的ksh-ksh93
15.3 小结
a 【前言】
在当今的互联网世界,想必为流行的一个词就是“云计算”了,而且云计算又引领了大数据时代的到来。而Linux在推动云计算方面起到了举足轻重的作用。比如,当今著名的商业云计算平台“亚马逊弹性计算云(EC2)”就是基于Linux的。这就需要在Linux服务器上进行大量的数据处理和管理工作,以及一些应用的部署和监测,这时就需要命令行和Shell脚本的帮助。在Linux系统中,我们通常是在命令行下完成一些管理和配置的任务,并通过Shell脚本将一些重复或定期的任务自动化,通过短短几行脚本自动地将大部分手头工作搞定,从而节省大量的时间。而且理解Shell脚本也可以让你更好地了解操作系统。Shell脚本还可以和许多外部命令行工具结合起来完成信息查询、文本处理、任务定时自动化以及监测系统之类的工作。当然,伴随着这些便利性的还有巨大的破坏性。比如,稍不留神,你可能就会将整个根目录全部毁掉,或者错误地处理重要的配置文件。这时,了解Linux命令行和Shell脚本相关的细节、遵循Linux使用规范就显得尤其重要了。
本书面向系统管理员,基于Linux系统的软件开发和测试人员,以及所有想有效使用Linux系统的爱好者。书中系统而全面地介绍了Shell(Bash)脚本编程的语法、命令和技巧等内容,结合大量的实例进行讲解,你可以将其作为参考,或是作为自己编写脚本时的灵感源泉。
关于“Linux典藏大系”
“Linux典藏大系”是清华大学出版社自2010年1月以来陆续推出的一个图书系列,截止2013年,已经出版了10余个品种。该系列图书涵盖了Linux技术的方方面面,可以满足各个层次和各个领域的读者学习Linux技术的需求。该系列图书自出版以来获得了广大读者的好评,已经成为了Linux图书市场上耀眼的明星品牌之一。其销量在同类图书中也名列前茅,其中一些图书还获得了“51CTO读书频道”颁发的“受读者喜爱的原创IT技术图书奖”。该系列图书在出版过程中也得到了国内Linux领域知名的技术社区ChinaUnix(简称CU)的大力支持和帮助,读者在CU社区中就图书的内容与活跃在CU社区中的Linux技术爱好者进行广泛交流,取得了良好的学习效果。
本书特色
1.视频讲解
为了帮助读者更加高效、直观地学习,编著者为本书重点内容专门录制了配套教学视频,需读者自行下载。
2.内容全面
本书将理论与实践相结合,全面介绍了Linux系统的常用命令及Shell脚本编程所需的知识点。书中对Linux Shell脚本编程的基本概念、语法、命令、技巧和较难理解的知识点都配合图示和实例进行了详细讲解。
3.循序渐进
本书从基本的Linux Shell命令开始讲解,逐步深入到Linux Shell脚本编程,让读者可以迅速掌握Linux Shell的各种特性,并能在实际开发中加以使用。
4.实例丰富
本书偏重于实践教学,书中的每一个理论知识都给出了具体的典型实例。例如,对每一个Linux常用命令、Linux Shell的相关概念及Shell脚本编程的相关知识等,都列举了大量实例供读者了解这些知识点在实际环境中的应用。
5.经验传授
本书是基于编著者多年的Linux系统管理和Linux平台程序设计的经验总结而来,书中给出了大量的经验和技巧,尽力消除读者在学习Linux Shell编程时可能会遇到的各种障碍,从而更加迅速而高效地掌握Shell脚本编程。
本书内容及体系结构
第1篇 Linux Shell基础和使用(第1~4章)
本篇介绍Linux命令行和Linux Shell的基础知识,包括Linux及Linux Shell简介、Bash简介、Bash启动和退出脚本、Shell中的变量、Shell中的扩展、创建和使用别名,以及Shell下的常用命令等。这些内容都是学习后续章节所必须要掌握的基础知识。
第2篇 Shell 脚本编程(第5~15章)
本篇主要介绍Shell脚本编程所需的知识,包括Shell脚本中的注释、Shell变量进阶、Shell的算术运算、如何退出脚本、如何调试脚本、Shell脚本编程风格、Shell的条件执行、Shell中的循环和控制语句、Shell函数、正则表达式、脚本的输入处理、Shell重定向、管道和过滤器、Shell中的捕获、sed和awk,以及其他Shell中的介绍等内容。这些内容几乎涵盖了日常使用Shell脚本编程的方方面面。
本书读者对象
* Linux Shell编程入门新手;
* Linux Shell编程进阶人员;
* 广大Linux程序设计人员;
* Linux系统管理员;
* 网站管理工程师;
* Linux培训机构的学员;
* Linux Shell编程爱好者;
* 需要一本案头查询手册的人员。
本书配套资源获取方式
本书涉及的源程序和配套教学视频等学习资料需要读者自行下载。
编著者
评论
还没有评论。