本文介绍: Shell 是系统的用户界面,提供了用户与内核进行交互操作的一种接口Shell 将用户输入的命令并且把它们送到内核去执行,然后返回执行结果Shell 是可编程的,它允许用户编写由 Shell 命令组成的程序在 Unix/Linux 里,一个程序/命令只做好一件事;复杂的问题可以通过多个命令的组合来解决;形式最简单的 Shell 脚本就是一系列命令构成的可执行文件,并可以被其他脚本复用。编写风格良好易读的 Shell 脚本可以提高日常任务的自动化程度和准确性。
1 Shell 基础介绍
1.1 Shell 简介
Shell 概述
Shell 发展史
在 Linux 中,有多种 Shell 程序可供选择,比如 dash、csh、zsh 等,默认的 Shell 可以在 /bin/sh
查看,在etc/passwd
中修改。
查看Shell
查看系统默认安装的 Shell
查看当前登录用户默认 Shell
查看当前的 Shell
1.2 Shell 脚本(定义、作用、格式、权限及执行)
Shell 脚本基础知识
在 Unix/Linux 里,一个程序/命令只做好一件事;复杂的问题可以通过多个命令的组合来解决;形式最简单的 Shell 脚本就是一系列命令构成的可执行文件,并可以被其他脚本复用。编写风格良好易读的 Shell 脚本可以提高日常任务的自动化程度和准确性。
Shell 脚本的约束Shell 脚本可以完成很多任务,但不适用于所有情况
Shell 脚本开发环境
高级编辑器如 Vim 和 Emacs,在识别文件的后缀为 .sh 后,可以提供语法高亮、检查、补全等功能。
Shell 脚本指定解释器
Shell 脚本只是静态的代码,若要输出结果,还需要解释器的参与。一般在脚本的第一行,指定执行此脚本的解释器。如果不指定解释器,脚本也能在默认的解释器中正常运行,但出于规范和安全的考虑,建议指定如下:
执行 Shell 脚本
后台执行 Shell 脚本
2 Shell 编程基础
2.1 输入输出、管道
Linux 中的文本流
输出重定向
输入重定向
管道
2.2 字符、变量、运算
2.2.1 Shell 中的字符
2.2.2 Shell 中的变量
变量的类型
使用变量
扩展变量
变量的赋值和输出
2.2.3 Shell 的算术扩展
在 Shell 中计算时间
算术运算常用表达式
算术运算优先级
变量递增的前置后置区别
2.3 语句(条件、循环)
Shell 中的结构化命令
条件语句
多分支判断语句
循环语句
for 循环
for 循环中的列表
for 循环奇数累加器
for 循环文件展示
while 循环
until 循环
使用循环打印乘法表
3 Shell 编程最佳实践
3.1 调试
Shell 脚本错误故障排除
调试模式
评估退出代码
3.2 语法风格
3.3 最佳实践示例
检测日志告警信息并邮件通知
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。