# shell编程学习 **Repository Path**: wangzhenye2019/shell ## Basic Information - **Project Name**: shell编程学习 - **Description**: 大部分案例均出自《Linux命令行与shell脚本编程大全案例》一书,方便各位小伙伴学习,欢迎各位同学共同扩充shell脚本库哦!!!! - **Primary Language**: Shell - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2021-11-10 - **Last Updated**: 2021-11-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # shell编程学习 #### 介绍 欢迎大家交流学习 #### 文档目录 一、什么是shell? 为什么要学习和使用shell? 二、shell的分类 Bash 常用快捷键 输入输出重定向 linux 的标准输入与输出 输入重定向 输出重定向 /dev/null 文件 多命令顺序执行 shell脚本的执行 三、shell变量 1. 变量的命名规则: shell中特殊符号 2. 变量的分类: 2.1 用户自定义变量: 2.1.1 变量定义 2.1.2 变量调用 2.1.3 变量查看 2.1.4 变量删除 2.2 环境变量: 2.2.1 环境变量设置 2.2.2 环境变量查询和删除 2.2.3 系统默认环境变量 2.3 位置参数变量: 2.4 预定义变量: 3. 只读变量: 4. 接受键盘输入: 四、shell 运算符 1. 算数运算符 2. 关系运算符 3. 逻辑运算符 4. 字符串运算符 5. 文件测试运算符(重点) 五、流程控制 1. if条件判断 1.1 单分支if条件 1.2 双分支if条件语句 1.3 多分支if条件语句 2. 多分支case条件语句 3. for循环 4. while循环 5. until循环 6. 函数 7. 特殊流程控制语句 7.1 exit语句 7.2 break语句 7.3 break语句 六、字符截取、替换和处理命令 正则表达式 6.1 字符截取、替换命令 6.1.1 cut 列提取命令 6.1.2 awk 编程 6.1.2.1 awk 概述 6.1.2.2 printf 格式化输出 6.1.2.3 awk 基本使用 6.1.2.4 awk 的条件 BEGIN END 关系运算符 正则表达式 6.1.2.5 awk 内置变量 awk常用统计实例 6.1.2.6 awk 流程控制 6.1.2.7 awk 函数 6.1.2.8 awk 中调用脚本 6.1.3 sed 文本选取、替换、删除、新增的命令 6.1.3.1 提取行数据 6.1.3.2 删除行数据 6.1.3.3 追加插入行数据 6.1.3.4 替换行数据 6.1.3.5 字符串替换 6.2 字符处理命令 6.2.1 sort 排序命令 6.2.2 uniq 取消重复行 6.2.3 wc 统计命令 #### 安装教程 1. xxxx 2. xxxx 3. xxxx #### 使用说明 1. xxxx 2. xxxx 3. xxxx #### 参与贡献 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码 4. 新建 Pull Request #### 特技 1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md 2. Gitee 官方博客 [blog.gitee.com](https://blog.gitee.com) 3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解 Gitee 上的优秀开源项目 4. [GVP](https://gitee.com/gvp) 全称是 Gitee 最有价值开源项目,是综合评定出的优秀开源项目 5. Gitee 官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help) 6. Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)