书籍详情

Linux Shell命令行及脚本编程实例详解(Linux典藏大系)

Linux Shell命令行及脚本编程实例详解(Linux典藏大系)

作者:刘艳涛

出版社:清华大学出版社

出版时间:2015-01-01

ISBN:9787302378624

定价:¥59.80

购买这本书可以去
内容简介
  本书理论结合实践,全面、系统地介绍了Linux Shell(Bash)脚本编程的语法、命令、技巧等内容。本书偏重于实践教学,在讲解理论知识时,通过一些典型实例让读者了解理论知识在实际环境中的应用,并对易混淆和较难理解的知识点做了重点分析,以加深读者对知识的理解。另外,作者专门为本书录制了高清配套教学视频,以帮助读者高效学习,同时也提供了本书实例源程序以方便读者学习。本书共15章,分为两篇。主要内容包括:Linux及Linux Shell简介、初识Linux Shell、常用Shell(Bash)命令、Shell命令进阶、Shell编程基础、Shell的条件执行、Bash循环、Shell函数、正则表达式、脚本输入处理、Shell重定向、管道和过滤器、捕获、sed和awk,以及其他Linux Shell种类介绍。本书使用了大量的实例详细地介绍了Bash的语法及各种技巧,并以循序渐进的方式讲解了Linux Shell(Bash)的各种特性,让读者能够迅速上手,并能学以致用。对于初次接触Linux Shell的读者,本书是一本很好的自学教材;对于接触过Linux Shell的读者,本书可以作为进阶读物或随时查阅的技术手册;另外,本书也可以作为高等学校相关专业的教材和各类培训学校的教材。
作者简介
  刘艳涛,就职于一家全球500强的通信公司,从事公司无线产品研发中心的Linux/Unix操作系统的管理和技术支持。拥有近6年的Linux系统管理与运维经验。在使用Shell等脚本实现自动化管理方面有丰富的经验。擅长配置Nagios与Ganglia集成的自动化监控和故障报警平台。在结合研发环境对Linux系统性能调优方面有深入的研究。
目录
第1篇 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 小结
猜您喜欢

读书导航