目录
一、shell脚本的概念
将要执行的命令按顺寻保存到一个文件文本,给该文件添加执行权限,可结合各种shell语句完成更复杂的操作
场景应用于
- 重复性操作
- 交互性任务
- 批量事务处理
- 服务运行状态监控
- 定时执行任务
二、Shell编程的规范
- 登录后默认使用的shell程序,一般为/bin/bash
- 不同shell的内部指令、运行环境等会有所不同
三、Shell脚本的组成
- 第一行为解释器 申明 一般为 #!/bin/bash 表示此行以下的代码语句是通过/bin/bash程序来解释执行
- 注释信息 #号为注释信息 #号开头的代码或文字不被执行 一般用来注释 解释的
- echo 用来输出的 列子 echo "xxxx" 输出的内容就是xxxx
四、Shell脚本的执行
两种方式执行
1.先给脚本文件赋予权限 chmod +x 脚本文件sh
2.直接bash 脚本文件.sh 执行 此方法不需要给文件添加执行权限
五、管道符号
“ |” 为管道符号 意思是 将左边的结果 是右边输入的命令
例子 ps -ef | wc -l 查出进程 给右边统计行数
六、重定向符号
1、重定向的几类交互设备文件
- 标准输入:从该设备接收用户输入的数据
- 标准输出:通过该设备向用户输出数据
- 标准错误:通过该设备报告执行出错信息
类型 | 设备文件 | 文件描述编号 | 默认设备 |
标准输入 | /dev/stdin | 0 | 键盘 |
标准输出 | /dev/stdout | 1 | 显示器 |
标准错误输出 | /dev/stderr | 2 | 显示器 |
2、重定向操作
类型 | 操作符 | 用途 |
重定向输入 | < | 从指定的文件读取数据 |
重定向输出 | > | 将标准输出结果 保存 到指定的文件,并且覆盖原有内容 |
重定向错误输出 | >> 2> 2>> | 1、将标准输出结果 追加 到指定的文件的尾部,不覆盖原有内容 2、将错误信息 保存 到指定的文件,并且覆盖原有内容 |
混合输出 | & 2>1 | 1、将标准输出、标准错误保存到同一文件中 2、 将标准错误输出重定向到标准输出 |
七、shell的变量
1、变量的作用 :用来存放系统和用户需要使用的参数 值
- 变量名:自己设置一个名字作为变量名
- 变量值:能够变化的值
2、变量的分类
- 自定义变量:用户自己定义的值
- 环境变量:由系统维护。用于设置工作环境
- 位置变量:通过命令行给脚本程序传递参数
- 预定义变量:Bash中内置的一类变量。不能直接修改
3、定义新的变量
格式:变量名=变量值 例 a=1
变量命名规则:以字母或下滑线开头,区分大小写
4、查看变量的值
格式:echo $变量名 例子 a=1 echo $a
5、read命令 获取输入的内容
方法一、read -p " 内容" 变量名
echo $变量名
八、整数变量的运算
格式:echo $( expr 整数1 运算符 整数2) $(expr $变量1 运算符号 $变量2) + - \* / %(余数)
echo $[整数1 运算符号 整数2] $[ 变量1 运算符号 变量2] 用了中括号就不需要 expr了
echo $((整数1 运算符号 整数2)) $((变量1 运算符号 变量2))
let a=10+5
let a++ 相当于 a=$[a+1]
let a-- 相当于a=[a-1]
let a+=2 相当于 a=$[a+2]
九、浮点运算
两种方法