kindle电子书

资源下载,尽在我的书库!
首页 > kindle电子书库 > 工业|计算机|互联网 > 电子、计算机、网络

Shell从入门到精通

  • 作者:[中] 张春晓
  • 体积:12.48 MB
  • 语言:中文
  • 日期:2017-01-20
  • 推荐:

简介:《Shell从入门到精通》共15章,分为3篇。涵盖的主要内容包括Shell编程基础、Shell编程环境的搭建、Shell变量、条件测试和判断语句、循环结构、函数、数组、正则表达式、基本文本处理、流编辑、awk工具、文件操作、子Shell与进程处理、Shell脚本调试技术等,并在《Shell从入门到精通》的第15章中给出了2个具体的综合实例。

电子书详细介绍

TAG():Shell编程 计算机 linux
内容简介
Shell学习终极实战秘笈,ChinaUnix技术社区鼎力推荐
结合近300个实例和2个综合案例,全方位介绍Shell编程
15小时配套教学视频 35小时Linux入门教学视频 11小时Linux指令教学视频
内容全面:全面介绍了Shell编程技术,基本涵盖Shell编程的所有重要知识点
循序渐进:遵循科学的讲解顺序,从基础知识开始,到Shell脚本调试技术,逐步深入
讲解详细:注重分析和实战,每个知识点都结合具体示例讲解,并力求详尽和透彻
实用性强:讲解时穿插了近300个应用示例,并对实现过程给出了详细的说明
技巧性强:穿插了大量的开发经验和技巧,并对容易忽略的细节给出了专门的提示
案例典型:最后的两个综合案例来源于作者的实际项目,具有很高的应用价值
视频教学:对重点内容录制了配套教学视频辅助学习,并赠送了46小时Linux学习视频
 
编辑推荐
《Shell从入门到精通》结构清晰,易教易学,实例丰富,可操作性强,对易混淆和实用性强的内容进行了重点提示和讲解。因此,《Shell从入门到精通》非常适合Linux系统管理和开发的相关人员阅读,也可以作为高等学校教师和相关专业学生的教材,又可以作为各类培训班的培训教材。
 
作者简介
张春晓,毕业于广州暨南大学,计算机软件与理论硕士。现任职于暨南大学,长期从事UNIX及Linux系统维护,已达11年之久,对Shell编程有深入的研究。作者热衷于UNIX的严谨与简洁,又痴迷于Linux的自由与开放,整日与UNIX及Linux为伴,从中获益匪浅。
 
目录
第1篇 认识Shell编程 
第1章 Shell入门基础(教学视频:66分钟)2 
1.1 为什么学习和使用Shell编程2 
1.2 什么是Shell2 
1.2.1 Shell的起源3 
1.2.2 Shell的功能4 
1.2.3 Shell的分类4 
1.3 作为程序设计语言的Shell5 
1.3.1 交互式程序5 
1.3.2 创建脚本6 
1.3.3 把脚本设置为可执行6 
1.4 向脚本传递参数7 
1.4.1 Shell脚本的参数8 
1.4.2 参数扩展9 
1.5 第一个Shell程序:Hello,Bash Shell!10 
1.5.1 Shell脚本的基本元素10 
1.5.2 指定命令解读器11 
1.5.3 Shell脚本中的注释和风格12 
1.5.4 如何执行Shell程序13 
1.5.5 Shell程序的退出状态14 
1.6 小结15 
第2章 Shell编程环境的搭建(教学视频:49分钟)16 
2.1 在不同的操作系统上搭建Shell编程环境16 
2.1.1 在Windows上搭建Shell编程环境16 
2.1.2 在Linux上搭建Shell编程环境20 
2.1.3 在FreeBSD上搭建Shell编程环境22 
2.2 编辑器的选择23 
2.2.1 图形化编辑器23 
2.2.2 vi(vim)编辑器29 
2.3 系统环境的搭建36 
2.3.1 Shell配置文件36 
2.3.2 命令别名39 
2.4 小结39 
第2篇 Shell编程基础 
第3章 变量和引用(教学视频:62分钟)42 
3.1 深入认识变量42 
3.1.1 什么是变量42 
3.1.2 变量的命名42 
3.1.3 变量的类型43 
3.1.4 变量的定义45 
3.1.5 变量和引号48 
3.1.6 变量的作用域48 
3.1.7 系统变量51 
3.1.8 环境变量53 
3.2 变量赋值和清空55 
3.2.1 变量赋值55 
3.2.2 引用变量的值55 
3.2.3 清除变量57 
3.3 引用和替换57 
3.3.1 引用58 
3.3.2 全引用58 
3.3.3 部分引用59 
3.3.4 命令替换59 
3.3.5 转义60 
3.4 小结60 
第4章 条件测试和判断语句(教学视频:77分钟)61 
4.1 条件测试61 
4.1.1 条件测试的基本语法61 
4.1.2 字符串测试62 
4.1.3 整数测试65 
4.1.4 文件测试67 
4.1.5 逻辑操作符70 
4.2 条件判断语句71 
4.2.1 使用简单的if语句进行条件判断72 
4.2.2 使用if else语句进行流程控制74 
4.2.3 使用if elif语句进行多条件判断76 
4.2.4 使用exit语句退出程序78 
4.3 多条件判断语句case80 
4.3.1 多条件判断语句case的基本语法80 
4.3.2 利用case语句处理选项参数81 
4.3.3 利用case语句处理用户输入82 
4.4 运算符83 
4.4.1 算术运算符83 
4.4.2 位运算符87 
4.4.3 自增/自减运算符89 
4.4.4 数字常量的进制91 
4.5 小结92 
第5章 循环结构(教学视频:61分钟)93 
5.1 步进循环语句for93 
5.1.1 带列表的for循环语句93 
5.1.2 不带列表的for循环语句98 
5.1.3 类C风格的for循环语句99 
5.1.4 使用for循环语句处理数组100 
5.2 until循环语句101 
5.2.1 until语句的基本语法101 
5.2.2 利用until语句批量增加用户102 
5.3 while循环语句104 
5.3.1 while语句的基本语法104 
5.3.2 通过计数器控制while循环结构104 
5.3.3 通过结束标记控制while循环结构105 
5.3.4 理解while语句与until语句的区别106 
5.4 嵌套循环107 
5.5 利用break和continue语句控制循环108 
5.5.1 利用break语句控制循环108 
5.5.2 利用continue语句控制循环110 
5.5.3 分析break语句和continue语句的区别111 
5.6 小结114 
第6章 函数(教学视频:60分钟)115 
6.1 函数115 
6.1.1 什么是函数115 
6.1.2 函数的定义116 
6.1.3 函数的调用117 
6.1.4 函数链接118 
6.1.5 函数的返回值119 
6.1.6 函数和别名121 
6.1.7 再议全局变量和局部变量123 
6.2 函数参数125 
6.2.1 含有参数的函数的调用方法125 
6.2.2 获取函数参数的个数125 
6.2.3 通过位置变量接收参数值126 
6.2.4 移动位置参数127 
6.2.5 通过getopts接收函数参数128 
6.2.6 间接参数传递129 
6.2.7 通过全局变量传递数据130 
6.2.8 传递数组参数131 
6.3 函数库文件132 
6.3.1 函数库文件的定义132 
6.3.2 函数库文件的调用133 
6.4 递归函数134 
6.5 小结137 
第7章 数组(教学视频:52分钟)138 
7.1 定义数组138 
7.1.1 通过指定元素值来定义数组138 
7.1.2 通过declare语句定义数组139 
7.1.3 通过元素值集合定义数组140 
7.1.4 通过键值对定义数组141 
7.1.5 数组和普通变量142 
7.2 数组的赋值143 
7.2.1 按索引为元素赋值143 
7.2.2 通过集合为数组赋值144 
7.2.3 在数组末尾追加新元素145 
7.2.4 通过循环为数组元素赋值146 
7.3 访问数组146 
7.3.1 访问第1个数组元素146 
7.3.2 通过下标访问数组元素147 
7.3.3 计算数组的长度147 
7.3.4 通过循环遍历数组元素149 
7.3.5 引用所有的数组元素150 
7.3.6 以切片方式获取部分数组元素150 
7.3.7 数组元素的替换153 
7.4 删除数组154 
7.4.1 删除指定数组元素154 
7.4.2 删除整个数组155 
7.5 数组的其他操作155 
7.5.1 复制数组155 
7.5.2 连接数组156 
7.5.3 加载文件内容到数组157 
7.6 小结157 
第8章 正则表达式(教学视频:57分钟)158 
8.1 什么是正则表达式158 
8.1.1 为什么使用正则表达式158 
8.1.2 如何学习正则表达式159 
8.1.3 如何实践正则表达式160 
8.2 正则表达式基础160 
8.2.1 正则表达式的原理160 
8.2.2 基本正则表达式161 
8.2.3 扩展正则表达式166 
8.2.4 Perl正则表达式168 
8.2.5 正则表达式字符集169 
8.3 正则表达式应用170 
8.3.1 匹配单个字符170 
8.3.2 匹配多个字符173 
8.3.3 匹配字符串的开头或者结尾175 
8.3.4 运算符优先级176 
8.3.5 子表达式177 
8.3.6 通配符180 
8.4 grep命令181 
8.4.1 grep命令的基本语法181 
8.4.2 grep命令族简介182 
8.5 小结182 
第9章 基本文本处理(教学视频:100分钟)183 
9.1 使用echo命令输出文本183 
9.1.1 显示普通字符串183 
9.1.2 显示转义字符184 
9.1.3 显示变量186 
9.1.4 换行和不换行187 
9.1.5 显示命令执行结果188 
9.1.6 echo命令执行结果的重定向188 
9.2 文本的格式化输出189 
9.2.1 使用UNIX制表符189 
9.2.2 使用fold命令格式化行190 
9.2.3 使用fmt命令格式化段落192 
9.2.4 使用rev命令反转字符顺序194 
9.2.5 使用pr命令格式化文本页195 
9.3 使用sort命令对文本排序198 
9.3.1 sort命令的基本用法198 
9.3.2 使用单个关键字排序200 
9.3.3 根据指定的列排序203 
9.3.4 根据关键字降序排序204 
9.3.5 数值列的排序205 
9.3.6 自定义列分隔符206 
9.3.7 删除重复的行207 
9.3.8 根据多个关键字排序208 
9.3.9 使用sort命令合并文件209 
9.4 文本的统计211 
9.4.1 输出含有行号的文本行211 
9.4.2 统计行数213 
9.4.3 统计单词数和字符数215 
9.5 使用cut命令选取文本列215 
9.5.1 cut命令及其语法216 
9.5.2 选择指定的文本列217 
9.5.3 选择指定数量的字符218 
9.5.4 排除不包含列分隔符的行219 
9.6 使用paste命令拼接文本列220 
9.6.1 paste命令及其语法220 
9.6.2 自定义列分隔符222 
9.6.3 拼接指定的文本列222 
9.7 使用join命令联接文本列223 
9.7.1 join命令及其语法224 
9.7.2 指定联接关键字列225 
9.7.3 内联接文本文件226 
9.7.4 左联接文本文件226 
9.7.5 右联接文本文件227 
9.7.6 全联接文本文件228 
9.7.7 自定义输出列229 
9.8 使用tr命令替换文件内容229 
9.8.1 tr命令及其语法229 
9.8.2 去除重复出现的字符230 
9.8.3 删除空行231 
9.8.4 大小写转换232 
9.8.5 删除指定字符232 
9.9 小结234 
第10章 流编辑(教学视频:52分钟)235 
10.1 sed命令及其语法235 
10.1.1 sed命令以及语法235 
10.1.2 sed命令的工作方式237 
10.1.3 使用行号定位文本行237 
10.1.4 使用正则表达式定位文本行238 
10.2 sed命令的常用操作239 
10.2.1 sed编辑命令基本语法239 
10.2.2 选择文本240 
10.2.3 替换文本242 
10.2.4 删除文本246 
10.2.5 追加文本248 
10.2.6 插入文本249 
10.3 组合命令250 
10.3.1 使用—e选项执行多个子命令250 
10.3.2 使用分号执行多个子命令251 
10.3.3 对一个地址使用多个子命令251 
10.3.4 sed脚本文件253 
10.4 小结255 
第11章 文本处理利器awk命令(教学视频:78分钟)256 
11.1 awk入门256 
11.1.1 awk的功能256 
11.1.2 awk命令的基本语法257 
11.1.3 awk的工作流程258 
11.1.4 执行awk程序的几种方式258 
11.2 awk的模式匹配260 
11.2.1 关系表达式260 
11.2.2 正则表达式261 
11.2.3 混合模式262 
11.2.4 区间模式262 
11.2.5 BEGIN模式263 
11.2.6 END模式264 
11.3 变量265 
11.3.1 变量的定义和引用265 
11.3.2 系统内置变量266 
11.3.3 记录分隔符和字段分隔符267 
11.3.4 记录和字段的引用269 
11.4 运算符和表达式270 
11.4.1 算术运算符270 
11.4.2 赋值运算符271 
11.4.3 条件运算符272 
11.4.4 逻辑运算符273 
11.4.5 关系运算符274 
11.4.6 其他运算符275 
11.5 函数275 
11.5.1 字符串函数275 
11.5.2 算术函数279 
11.6 数组279 
11.6.1 数组的定义和赋值279 
11.6.2 遍历数组281 
11.7 流程控制283 
11.7.1 if语句283 
11.7.2 while语句284 
11.7.3 do...while语句285 
11.7.4 for语句286 
11.7.5 break语句287 
11.7.6 continue语句288 
11.7.7 next语句288 
11.7.8 exit语句289 
11.8 awk程序的格式化输出290 
11.8.1 基本print语句290 
11.8.2 格式化输出printf语句290 
11.8.3 使用sprintf()函数生成格式化字符串291 
11.9 awk的程序与Shell的交互292 
11.9.1 通过管道实现与Shell的交换292 
11.9.2 通过system函数实现与Shell的交互293 
11.10 小结293 
第12章 文件的操作(教学视频:74分钟)294 
12.1 文件294 
12.1.1 列出文件294 
12.1.2 文件类型296 
12.1.3 文件的权限298 
12.2 查找文件299 
12.2.1 find命令以及语法299 
12.2.2 find命令:路径300 
12.2.3 find命令:测试301 
12.2.4 find命令:使用!运算符对测试求反304 
12.2.5 find命令:处理文件权限错误信息305 
12.2.6 find命令:动作305 
12.3 比较文件307 
12.3.1 使用comm比较文件307 
12.3.2 使用diff比较文件310 
12.4 文件描述符314 
12.4.1 什么是文件描述符314 
12.4.2 标准输入、标准输出和标准错误314 
12.5 重定向315 
12.5.1 输出重定向(覆盖)315 
12.5.2 输出重定向(追加)317 
12.5.3 输入重定向318 
12.5.4 当前文档319 
12.5.5 重定向两个文件描述符319 
12.5.6 使用exec命令分配文件描述符320 
12.6 小结322 
第13章 子Shell与进程处理(教学视频:49分钟)323 
13.1 子Shell323 
13.1.1 什么是子Shell323 
13.1.2 内部命令、保留字和外部命令324 
13.1.3 在子Shell中执行命令327 
13.1.4 把子Shell中的变量值传回父Shell331 
13.2 进程处理333 
13.2.1 什么是进程334 
13.2.2 通过脚本监控进程334 
13.2.3 作业控制335 
13.2.4 信号与trap命令338 
13.3 小结340 
第3篇 Shell编程实战 
第14章 Shell脚本调试技术(教学视频:33分钟)342 
14.1 Shell脚本中的常见错误342 
14.1.1 常见语法错误342 
14.1.2 常见逻辑错误345 
14.2 Shell脚本调试技术346 
14.2.1 使用echo命令调试脚本346 
14.2.2 使用trap命令调试Shell脚本347 
14.2.3 使用tee命令调试Shell脚本349 
14.2.4 使用调试钩子调试Shell脚本351 
14.3 小结352 
第15章 利用Shell脚本解决实际问题(教学视频:33分钟)353 
15.1 编写系统服务脚本353 
15.1.1 系统启动过程353 
15.1.2 运行级别354 
15.1.3 服务脚本的基本语法355 
15.1.4 编写MySQL服务脚本357 
15.2 通过脚本管理Apache服务器日志364 
15.2.1 Apache以及日志文件简介364 
15.2.2 备份归档文件名生成函数365 
15.2.3 过期日志备份归档函数366 
15.2.4 过期日志删除函数368 
15.2.5 日志归档主程序368 
15.2.6 定时运行日志归档脚本369 
15.3 小结373

我来说两句

本书评论

共有 0 条评论
图书分类
我的书库手机端
帮助中心
会员登录 ×
新用户注册 ×