《Linux Shell编程从初学到精通》

图书作者:华清远见 丛书名称: 华清远见系列图书 出版日期: 2011年3月 PDF电子版免费下载

编辑推荐理由

推荐评分:5.0分

多年嵌入式人才培养及项目研发经验总结

数百家企业嵌入式研发岗位人才需求汇总

数十所嵌入式专业大学院校教学现状调研

侧重实践及案例分析并辅以代码加以讲解

图书简介

shell是用户与内核进行交互操作的一种接口,是linux最重要的软件之一。目前最流行的shell称为bash shell,bash shell脚本编程以其简洁、高效而著称,多年来成为linux程序员和系统管理员解决实际问题的利器。
  • 《linux shell编程从初学到精通》结合大量的示例,系统、全面地介绍了bash shell脚本编程的语法、命令、技巧、调试等内容,在书中还有很多练习可以引导读者思考,力求使读者掌握linux bash shell编程的所有特性。本书结构清晰、易教易学、实例丰富、可操作性强、学以致用,对易混淆和实用性强的内容进行了重点提示和讲解,并配有光盘,光盘中提供书中出现的所有脚本文件、各章的讲解ppt,以及各章的讲解录像。
  • 《linux shell编程从初学到精通》面向广大工程技术工作者,既可作为高等学校教师和相关专业学生的教材,又可作为各类培训班的培训教程。

图书目录

  • ※ 第1章 shell脚本编程概述

  • 1.1 linux和shell概述
  • 1.1.1 linux简介
  • 1.1.2 shell简介
  • 1.2 shell脚本编程的优势
  • 1.3 第一个shell脚本例子
  • 1.3.1 shell脚本的基本元素
  • 1.3.2 执行shell脚本
  • 1.4 本章小结
  • ※ 第2章 linux文件系统和文本编辑器

  • 2.1 用户和用户组管理
  • 2.1.1 用户管理常用命令
  • 2.1.2 用户组管理常用命令
  • 2.2 文件和目录操作
  • 2.2.1 文件操作常用命令
  • 2.2.2 目录操作常用命令
  • 2.2.3 文件和目录权限管理
  • 2.2.4 查找文件命令——find
  • 2.3 文本编辑器
  • 2.3.1 vi编辑器
  • 2.3.2 gedit编辑器
  • 2.4 本章小结
  • 2.5 上机提议
  • ※ 第3章 正则表达式

  • 3.1 正则表达式基础
  • 3.2 正则表达式的扩展
  • 3.3 通配
  • 3.4 grep命令
  • 3.4.1 grep命令基本用法
  • 3.4.2 grep和正则表达式结合使用的一组例子
  • 3.4.3 grep命令族简介
  • 3.5 本章小结
  • 3.6 上机提议
  • ※ 第4章 sed命令和awk编程

  • 4.1 sed命令基本用法
  • 4.2 sed编程的一组例子
  • 4.2.1 sed命令选项的一组例子
  • 4.2.2 sed文本定位的一组例子
  • 4.2.3 sed基本编辑命令的一组例子
  • 4.2.4 sed高级编辑命令的一组例子
  • 4.3 awk编程
  • 4.3.1 awk编程模型
  • 4.3.2 awk调用方法
  • 4.4 awk编程的一组例子
  • 4.4.1 awk模式匹配
  • 4.4.2 记录和域
  • 4.4.3 关系和布尔运算符
  • 4.4.4 表达式
  • 4.4.5 系统变量
  • 4.4.6 格式化输出
  • 4.4.7 内置字符串函数
  • 4.4.8 向awk脚本传递参数
  • 4.4.9 条件语句和循环语句
  • 4.4.10 数组
  • 4.5 本章小结
  • 4.6 上机提议
  • ※ 第5章 文件的排序、合并和分割

  • 5.1 sort命令
  • 5.1.1 sort命令的基本用法
  • 5.1.2 sort和awk的联合用法
  • 5.2 uniq命令
  • 5.3 join命令
  • 5.4 cut命令
  • 5.5 paste命令
  • 5.6 split命令
  • 5.7 tr命令
  • 5.8 tar命令
  • 5.9 本章小结
  • 5.10 上机提议
  • ※ 第6章 变量和引用

  • 6.1 变量
  • 6.1.1 变量替换和赋值
  • 6.1.2 无类型的shell脚本
  • 变量
  • 6.1.3 环境变量
  • 6.1.4 位置参数
  • 6.2 引用
  • 6.2.1 全引用和部分引用
  • 6.2.2 命令替换
  • 6.2.3 转义
  • 6.3 本章小结
  • 6.4 上机提议
  • ※ 第7章 退出、测试、判断及操作符

  • 7.1 退出状态
  • 7.2 测试
  • 7.2.1 测试结构
  • 7.2.2 整数比较运算符
  • 7.2.3 字符串运算符
  • 7.2.4 文件操作符
  • 7.2.5 逻辑运算符
  • 7.3 判断
  • 7.3.1 简单if结构
  • 7.3.2 exit命令
  • 7.3.3 if/else结构
  • 7.3.4 if/else语句嵌套
  • 7.3.5 if/elif/else结构
  • 7.3.6 case结构
  • 7.4 运算符
  • 7.4.1 算术运算符
  • 7.4.2 位运算符
  • 7.4.3 自增自减运算符
  • 7.4.4 数字常量
  • 7.5 本章小结
  • 7.6 上机提议
  • ※ 第8章 循环与结构化命令

  • 8.1 for循环
  • 8.1.1 列表for循环
  • 8.1.2 不带列表for循环
  • 8.1.3 类c风格的for循环
  • 8.2 while循环
  • 8.2.1 计数器控制的while循环
  • 8.2.2 结束标记控制的while循环
  • 8.2.3 标志控制的while循环
  • 8.2.4 命令行控制的while循环
  • 8.3 until循环
  • 8.4 嵌套循环
  • 8.5 循环控制符
  • 8.5.1 break循环控制符
  • 8.5.2 continue循环控制符
  • 8.6 select结构
  • 8.7 本章小结
  • 8.8 上机提议
  • ※ 第9章 变量的高级用法

  • 9.1 内部变量
  • 9.2 字符串处理
  • 9.3 有类型变量
  • 9.4 间接变量引用
  • 9.5 bash数学运算
  • 9.5.1 expr命令
  • 9.5.2 bc运算器
  • 9.6 本章小结
  • 9.7 上机提议
  • ※ 第10章 i/o重定向

  • 10.1 管道
  • 10.1.1 管道简介
  • 10.1.2 cat和more命令
  • 10.1.3 sed命令与管道
  • 10.1.4 awk命令与管道
  • 10.2 i/o重定向
  • 10.2.1 文件标识符
  • 10.2.2 i/o重定向符号及其用法
  • 10.2.3 exec命令的用法
  • 10.2.4 代码块重定向
  • 10.3 命令行处理
  • 10.3.1 命令行处理流程
  • 10.3.2 eval命令
  • 10.4 本章小结
  • 10.5 上机提议
  • ※ 第11章 linux/unix shell类型与区别

  • 11.1 linux/unix shell起源与分类
  • 11.2 dash简介
  • 11.3 tcsh简介
  • 11.4 korn shell简介
  • 11.5 本章小结
  • ※ 第12章 子shell与进程处理

  • 12.1 子shell
  • 12.1.1 内建命令
  • 12.1.2 圆括号结构
  • 12.2 shell的限制模式
  • 12.3 进程处理
  • 12.3.1 进程和作业
  • 12.3.2 作业控制
  • 12.3.3 信号
  • 12.3.4 trap命令
  • 12.4 本章小结
  • 12.5 上机提议
  • ※ 第13章 函数

  • 13.1 函数的定义和基本知识
  • 13.2 向函数传递参数
  • 13.3 函数返回值
  • 13.4 函数调用
  • 13.4.1 脚本放置多个函数
  • 13.4.2 函数相互调用
  • 13.4.3 一个函数调用多个函数
  • 13.5 局部变量和全局变量
  • 13.6 函数递归
  • 13.6.1 使用局部变量的递归
  • 13.6.2 不使用局部变量的递归
  • 13.7 本章小结
  • 13.8 上机提议
  • ※ 第14章 别名、列表及数组

  • 14.1 别名
  • 14.2 列表
  • 14.3 数组
  • 14.3.1 数组的基本用法
  • 14.3.2 数组的特殊用法
  • 14.3.3 用数组实现简单的数据结构
  • 14.4 本章小结
  • 14.5 上机提议
  • ※ 第15章 一些混杂的主题

  • 15.1 脚本编写风格
  • 15.1.1 缩进
  • 15.1.2 {}的格式
  • 15.1.3 空格和空行的用法
  • 15.1.4 判断和循环的编程风格
  • 15.1.5 命名规范
  • 15.1.6 注释风格
  • 15.2 脚本优化
  • 15.2.1 简化脚本
  • 15.2.2 保持脚本的灵活性
  • 15.2.3 给用户足够的提示
  • 15.3 linux中的特殊命令
  • 15.3.1 shift命令
  • 15.3.2 getopts命令
  • 15.4 交互式和非交互式shell脚本
  • 15.4.1 非交互式shell脚本
  • 15.4.2 交互式shell脚本
  • 15.5 /dev文件系统
  • 15.5.1 /dev文件系统基础知识
  • 15.5.2 /dev/zero伪设备
  • 15.5.3 /dev/null伪设备
  • 15.6 /proc文件系统
  • 15.6.1 使用/proc/sys优化系统参数
  • 15.6.2 查看运行中的进程信息
  • 15.6.3 查看文件系统信息
  • 15.6.4 查看网络信息
  • 15.7 shell包装
  • 15.8 带颜色的脚本
  • 15.9 linux脚本安全
  • 15.9.1 使用shc工具加密shell脚本
  • 15.9.2 linux shell脚本编写的病毒
  • 15.9.3 linux shell中的木马
  • 15.10 本章小结
  • 15.11 上机提议
  • ※ 第16章 shell脚本调试技术

  • 16.1 shell脚本调试概述
  • 16.2 shell脚本调试技术
  • 16.2.1 使用trap命令
  • 16.2.2 使用tee命令
  • 16.2.3 调试钩子
  • 16.2.4 使用shell选项
  • 16.3 本章小结
  • 16.4 上机提议
  • ※ 第17章 bash shell编程范例

  • 17.1 将文本文件转化为html文件
  • 17.2 查找文本中n个出现频率最高的单词
  • 17.3 伪随机数的产生和应用
  • 17.4 crontab的设置和应用
  • 17.5 使用mysql数据库
  • 17.5.1 mysql基础
  • 17.5.2 shell脚本使用mysql
  • 17.6 linux服务器性能监控系统
  • 17.6.1 ganglia简介及安装
  • 17.6.2 提取服务器性能参数名称及数据
  • 17.6.3 动态更新服务器监控数据
  • 17.7 本章小结
  • 17.8 上机提议
  • 附录
  • 附录a posix标准简介
  • 附录b 常用ascii码对照表
  • 附录c linux信号及其意义
  • 附录d bash内建变量索引
  • 附录e bash内建命令索引
  • 参考文献