目录
一、编写简单的脚本
shell脚本名称可以任意,建议sh结尾,表示是脚本文件
脚本组成元素
第一行脚本声明(#!):声明系统使用哪种shell解释器执行脚本
第二行注释信息(#)
之后的为:执行语句
二、接收用户参数
$0:当前脚本程序名称
$#:对应的是总共几个参数
$*:所有位置的参数值
$?:显示上一次命令的执行返回值,0成功,其他为失败
$1,$2…:对应第N个位置的参数值
三、判断用户参数
shell 条件测试语句包括:
文件测试语句
格式:[ 操作符 文件或目录 ]
| 操作符 | 作用 |
|---|---|
| -d | 判断文件是否为目录类型 |
| -e | 判断文件是否存在 |
| -f | 判断是否为一般文件 |
| -r | 判断当前用户是否有权限读取 |
| -w | 判断当前用户是否有权限写入 |
| -x | 判断当前用户是否有权限执行 |
逻辑测试
格式:[ 表达式1 ] 操作符 [ 表达式2 ]
| 操作符 | 作用 |
|---|---|
| && | 逻辑与,而且的意思 |
| -e | 逻辑或,或者的意思 |
| -f | 逻辑否 |
整数值比较
格式: [ 整数1 操作符 整数2 ]
| 操作符 | 作用 |
|---|---|
| -eq | 判断是否相等 |
| -ne | 判断是否不相等 |
| -gt | 判断是否大于 |
| -lt | 判断是否小于 |
| -lt | 判断是否小于或等于 |
| -ge | 判断是否大于或等于 |
字符串比较符
格式:[ 字符串1 操作符 字符串2 ]
| 操作符 | 作用 |
|---|---|
| = | 比较字符串内容是否相同 |
| != | 比较字符串内容是否不相同 |
| -z | 判断字符串内容是否为空 |
四、条件测试语句
单分支结构

双分支结构

多分支结构

例子:

五、for 条件语句

例子:

六、While 条件语句

例子:

七、case条件语句

例子:

八、 计划任务服务
一次性任务
先来讲一次性任务吧 , 它是由 atd 服务/进程来实现的, 计划的管理操作是" at" 命令, 具体的可用参数如下:
| 命令 | 作用 |
|---|---|
| at<时间> | 安排一次性任务 |
| atq或at-l | 查看任务列表 |
| at-c 序号 | 预览任务和设置环境 |
| atrm 序号 | 删除任务 |
例子:

长期计划

例子:
在etc目录下,执行crontab -e
