课程大纲:
一、shell简介及基础
1、shell发展史及分类
2、bash功能简介
3、布署设置bash环境
4、shell脚本组成、运行模式及执行方法
5、bash排错方法
6、父shell和子shell
7、常用快捷键
二、变量
1、变量分类
2、内部变量
3、预定义变量
4、自定义变量及基本用法
5、数组特殊字符
6、别名
7、Here Document
8、打印特殊字符
三、循环结构与流程控制
1、if条件判断
2、case条件判断
3、for循环
4、while循环
5、until循环
6、select命令
7、break和continue
四、函数
1、函数用法
2、函数作用范围
3、参数使用
4、建立函数库
5、递归函数
五、算术运算
1、算术式简介
2、算术扩展
3、利用expr做算术运算
4、使用$[]做算术运算
5、使用内置变量declare、let做算术运算
6、利用bc做浮点运算
7、进制转换
六、重定向与转向
1、文件代码
2、操作文件
3、输入输出转向
4、转向附加
5、标准错误伴随输出转向
6、Here Document转向
七、高级变量与字符串操作
1、变量扩展:测试存在性及空值
2、变量扩展:取字符串切片,字符串长度
3、变量扩展:对比样式
4、变量扩展:取变量名称列表,数组索引列表
5、命令替换
八、正则表达式
1、入门介绍
2、元字符
3、字条转义
4、重复
5、字符类
6、分支条件
7、反义
8、分组
9、后向引用
10、零宽断言与负向零宽断言
11、贪婪与懒惰
12、注释
13、处理选项
14、平衡组/递归匹配
九、sed编辑器
1、sed介绍
2、sed基本语法
3、sed调用方式
4、sed高级用法
十、awk学习
1、awk原理介绍
2、awk基本语法
3、awk调用方式
4、awk循环语句
5、awk函数
6、awk数组
7、awk的BEGIN和END模式
8、awk数学运算和字符串操作
9、awk重定向输出
10、awk与bash之间传参调用
11、awk调试方法
十一、文字与图形接口编程
1、dialog文本接口编程
2、xdialog图形接口编程
十二、bash网络编程
1、bash网络转向
2、远程执行命令
3、expect与自动登录
十三、trap陷阱触发
1、信号signal
2、trap运用
十四、shell脚本加密与包装
1、加密shell脚本
2、生成二进制可执行文件
十五、shell中常用命令介绍
1、grep命令详解
2、find与xargs
3、sort和uniq命令详解
4、cut命令详解
5、curl与wget命令详解
6、cat、tac与rev
7、tr命令详解
8、paste命令详解
9、join命令详解
课程周期:
18课时(45分/课时)