1.计划任务
系统中需要设定脚本的执行时,需要crontab。“# crontab -h”一下。
crontab [-u user] file (在脚本中需要添加一条任务的语法格式)①
crontab [-u user] [ -e | -l | -r]
-u : 指定用户名
-e : 编辑执行的内容
-l : 列出已设定要执行的内容
-r : ***已设定要执行的内容
file : 是要求格式像“crontab -e”时手写输入的格式。执行上边的命令会“冲掉”(>)原有的设定。
需要在脚本中添加任务,是应该把需要添加的内容写入一个文本 文件file,然后使用该语法格式来载入 执行队列。 |
需要修改设定,比如增加一条需要执行的指令:
#!/bin/sh
# 设定一个临时文件,用来暂时保存现有的任务设定。
f_tm="/home/$USER/tem_file"
# 任务的执行以那个用户身份执行的
# 查询用户的任务 “crontab -u sunny -l”
u_c="$USER"
# 保存该用户目前的设定
crontab -u $u_c -l > $f_tm
# 添加新的任务。就是“crontab -e”执行后需要需如的内容。
# 保存为文本文件。
read -p "Input command that adding one: " add_com
echo "$add_com" >> $f_tm
# 从临时文件中读取任务设定信息。
crontab -u $u_c $f_tm
#test
#read ddy
# ***临时文件
rm -f $f_tm &> /dev/null
# 显示任务设定修改后的内容。
echo "The values for \"crontab -l\": " crontab -u $u_c -l
2.crontab -e
日期时间域有效值
域 | 有效值 | 有效值扩展 |
---|---|---|
minute | 0-59 | * 代表所有可用值 |
hour | 0-23 | 10-13 上午十点到下午一点 |
day of month | 1-31 | */2 两天执行一次 |
month | 1-12 | 1,3,5,7,8,10,12 表示所有大月 jan,feb,mar 英文单词的前三个字符 |
day of week | 0-7 | mon,tue 英文单词的前三个字符 |
command |
使用命令“vlinkstatus -w”每五分钟收集一次信息
# crontab -e */5 * * * * vlinkstatus -w # crontab -l */5 * * * * vlinkstatus -w