Linux的实际操作:任务调度基本说明

论坛 期权论坛 编程之家     
选择匿名的用户   2021-5-31 07:07   256   0

Linux可以定时调度我们的脚本或者代码

任务调度:值得是系统在某个时间执行特定的命令或者程序

任务调度的分类:

1.系统工作:有些重要的工作必须周而复始执行。如病毒扫描

2.个别用户工作:个别用户可能希望执行某些程序,比如对mysql数据库备份


语法:

crontab [选项]

[选项] :

-e编辑contab定时任务
-l查询crontab任务
-r删除当前用户所有的crontab任务

占位符的说明:【注意: *号之间有空格】

项目含义

范围

第一个*一小时中的第几分钟0-59
第二个*一天中的第几小时0-23
第三个*一月中的第几天1-31
第四个*一年中的第几月1-12
第五个*一周中的星期几0-9(0和7都代表星期日)

示意图:

案例:

设置任务调度文件 /etc/crontab


设置个人任务调度 执行 crontab -e 命令

接着输入任务到调度文件

如: */1 * * * * ls-l /etc/ > /tmp/to.txt

意思说每小时的每分钟执行 ls -l /etc/ > /tmp/to.txt

在里面输入:注意*之间的空格,i-->esc,:wq退出保存

当保存退出后每一分钟都会自动调用 ls -l /etc >> /tmp/to.txt

查看就是cd /tmp/即可ls

注意:上面的操作意味着我们往后的每一分钟都往这个 /tmp/to.txt文件追加内容,我们该如何停止呢?

把原来的语句删除即可


任务调度的实例:

案例一:每隔1分钟,就将当前的日期信息,追加到 /tmp/mydate文件中

(1)先编写一个文件 /home/mytask1.sh (和在windows中的.bat脚本文件一样,可以调用执行)

date >> /tmp/mydate

(2)给mytask1.sh一个可执行权限

(3)crontab -e

(4)*/1 * * * * /home/mytask1.sh

(5)成功

发现一分钟后又mydate文件出现

查看里面有什么

如何暂停脚本:

删除原文件即可


案例二:每隔1分钟,将当前日期和日历都追加到 /home/mycal 文件中

(1)先编写一个文件 /home/mytask2.sh

编写内容如下,追加数据到mycal中

date >> /tmp/mycal

cal >> /tmp/mycal

(2)给mytask1.sh一个可执行权限

chmod 744 /home/mytask2.sh

(3)crontab -e

(4)*/1 * * * * /home/mytask2.sh

(5)成功

一分钟后演示:


案例3:每天凌晨2点将mysql数据库testdb,备份到文件中

(1)先编写一个文件 /home/mytask3.sh

编写内容如下,重定向数据到mydb.bak中

/usr/local/mysql/bin/mysqkdump -u root -p root testdb > /tmp/mydb.bak

(2)给mytask3.sh一个可执行权限

chmod 744 /home/mytask3.sh

(3)crontab -e

(4)0 2 * * * /home/mytask2.sh

(5)成功

crond相关指令

1.crontab -r 终止任务调度

2.crontab -l:列出当前有哪些任务调度

3.service crond restart 重启任务调度

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP