Linux定时任务 crontab(-l -e)、at、batch
1、周期性定时任务crontab
cron['krɒn] 一时间单位 table
crontab -e 进入编辑定时任务界面,每一行代表一个定时任务,#开头的行为注释行,一行分成6列
分钟 小时 日期 月份 星期 调度的作业(命令),默认情况下/etc/crontab文件有规则(fedora亲测)
前五列允许出现的字符有 数字 - * / , 星期还可以采用mon、tue、wed、thu、fri、sat、sun,0-7(0和7为周日)
* * * /bin/databasebackup.bash 每天4:10分执行
0 4 */2 * * /usr/sbin/slapcat 每隔一天的4点执行
0 22 * 5,8,11 1-5 wall "It's 10pm" 5 8 11月份的工作日的每天22点,向所有的登陆用户发消息
5 4 * * tue /bin/echo "Sunday" 每个周二的4:5分执行
0 23,1-7/2,8 * * * /usr/sbin/mtpdate 每天23点到到早上7点只见每隔两个小时以及早上8点执行同步时间
* * * * * sleep 10; /bin/date >>/tmp/date.txt 先执行休息十秒在执行date,其实就是两条命令,/usr/bin/sleep;
试用for或while的死循环加sleep可以实现每秒执行,再与crontab一起试用,会几个命令重复死循环,一般不是想要的效果!
1 * * * * /usr/bin/date >> /home/lixn/time.txt 每天每个小时的1分钟执行
*/1 * * * * /usr/bin/data >> /tmp/time1.txt 每一分钟执行一次
(系统级的)做系统级配置我们会直接配置 /etc/crontab
(用户级的)一般还是建议大家使用 crontab -e ,这样系统也会帮着检查我们配置的脚本语法。会被写到 /var/spool/cron 目录下,生成一个和用户名一致的文件,文件内容就是我们编辑的定时脚本。(对的)
电脑关机后,定时任务便不能执行,再次开机又会自动执行 。(亲测)
crontab -l列出当前用户的定时任务
2、一次性定时任务at、banch
at 是一次性定时任务
banch 是一次性条件任务,即满足某种条件时(例如平均负荷很低)执行命令
一次性任务中的命令执行完毕(不管成功与否),对应的任务就自动消失。
序号 |
定时任务 |
说明 |
1 |
at [ -f file ] time |
在time时执行file文件中的命令,如果没有指定file文件那么从标准输入设备读取命令,出现at> |
2 |
at 22:00 <<<"shutdown -h now" |
|
3 |
at now+10minutes <<<"wall notice.txt" |
|
4 |
at 23:59 12/31/2011 at>cd /tmp at> mkdir -p a/b/c at> echo "all done" at> <EOT> |
在2011年的最后一刻执行命令cd /tmp; mkdir -p a/b/c; echo "all done"。 <EOT>表示同时 按下ctrl+D |
5 |
at 5pm + 3 days <<EOF /usr/sbin/ntpdate ntp.ubuntu.com EOF |
三天后的下午5点与ntp.ubuntu.com作时钟同步 |
6 |
at -f /opt/file.cmd 4am tomorrow |
明天下午4点执行文件/opt/file.cmd中的命令,file.cmd要先建好 |
7 |
at -l |
列出全部的一次性定时任务。文件在???? |
8 |
at -r 6 |
删除6号定时任务 |
9 | batch <<< "bzip2 -9 bigfile.dat" |
在系统平均负载较低(<1.5)时执行压缩命令 |
10 |
batch at > tar -cjf /tmp/backup.dat /opt/data at > <EOF> |
在系统平均负载较低时(<1.5)时执行数据打包压缩备份命令 |
at> 交互时按ctrl+D保存退出 不保存退出按ctrl+c
[lixn@localhost ~]$ atq 查询,还有at -l
Thu Apr :: a lixn
[lixn@localhost ~]$ atrm 8 删除,还有at -r 8
at 和batch需要继续亲测????系统平均负载再去看看??
Linux定时任务 crontab(-l -e)、at、batch的更多相关文章
- 【转帖】Linux定时任务Crontab命令详解
Linux定时任务Crontab命令详解 https://www.cnblogs.com/intval/p/5763929.html 知道有crontab 以及 at 命令 改天仔细学习一下 讲sys ...
- Linux定时任务Crontab命令详解_转
转自:Linux定时任务Crontab命令详解 (部分修改) linux 定时系统则是由 cron (crond) 这个系统服务来控制的.Linux 系统上面原本就有非常多的计划性工作,因此这个系统服 ...
- 如何让linux定时任务crontab按秒执行
如何让linux定时任务crontab按秒执行? linux定时任务crontab最小执行时间单位为分钟如果想以秒为单位执行,应该如何设置呢?思路 正常情况是在crontab中直接定义要执行的任务,现 ...
- linux定时任务crontab的设置
linux定时任务crontab的设置http://www.blogjava.net/freeman1984/archive/2010/09/23/332715.html vi /etc/cronta ...
- linux定时任务crontab怎样执行root命令
在/var/spool/cron/文件夹下放置了所有定时任务文件, 1.运行crontab -u $用户名 -e会显示$用户的所有定时任务: 2.运行sudo crontab -e会显示root用户所 ...
- Linux 定时任务 Crontab命令 详解
前言 crontab是Unix和Linux用于设置周期性被执行的指令,是互联网很常用的技术,很多任务都会设置在crontab循环执行,如果不使用crontab,那么任务就是常驻程序,这对你的程序要求比 ...
- Linux 定时任务 crontab 和 Systemd Timer
一.说说八卦 说到定时任务,我们常用的就是 crond 服务,但是我们不知道还有另外一种定时方式,那就是 systemd,我们常用 systemd 来管理我们的服务,但是我们却不知道,我们还可以通 ...
- Linux 定时任务crontab使用
正好要搞一个定时删除数据的功能,想到linux 可设置定时器定时执行任务就学习了下~ 并不是所有的linux服务器上都装了crontab 像我这: [root@hehe local]# crontab ...
- Linux定时任务Crontab使用 提示no crontab for root
使用命令查询crontab 任务时,一直提示:no crontab for root .查看了一些资料,说是crontab在初始时,设置了一次编辑方式,所以试了一下crontab -e的方式编辑,即在 ...
随机推荐
- Python开发【第三篇】数据类型
1.数字类型 int 整数 1 2 3 float 浮点数 1.1 0.9 0.99 complex 复数 (2+0j) str 字符串 'hello world' "hello world ...
- g_pLog
g_pLog = new CLog("log"); g_pLog->Enable(); g_pScrLog = new CLog("data"); ...
- 推荐几个IT交流社区
博客园,csdn,掘金,StackOverflow(境外),v2ex,开源中国,简书,头条
- ESP8266开发之旅 网络篇⑯ 无线更新——OTA固件更新
授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... QQ技术互动交流群:ESP8266&3 ...
- 现在Java 桌面应用程序能做到什么程度(Spring Boot+JavaFX2开发)
Spring Boot - JavaFX 2.0应用 很多人对Java开发native程序第一反应还停留在暗灰色单一风格的Java GUI界面,开发方式还停留在AWT或者Swing.本文主要基于Spr ...
- 解析 Microsoft.Extensions.DependencyInjection 2.x 版本实现
项目使用了 Microsoft.Extensions.DependencyInjection 2.x 版本,遇到第2次请求时非常高的内存占用情况,于是作了调查,本文对 3.0 版本仍然适用. 先说结论 ...
- JAVA eclipse 问题汇总(持续更新)
解决eclipse中文字很小 新下载的eclipse4.2.1版本,显示中文字体很小,但是英文比较正常.网上查看要更改字体大小,但是更改后英文也变大了,不是想要的结果.window – prefere ...
- 设计模式(三)Template Method模式
在父类中定义处理流程的框架,在子类中实现具体处理的模式就称为Template Method模式即模板方法模式. 根据下面的示例程序理解模板方法模式. package BigJunOba.bjtu.Te ...
- fenby C语言 P23
#include <stdio.h> int main(){ int i,max,a[5]={10,5,20,31,4}; max=a[0]; for(i=0;i<5;i++) if ...
- Android Studio配置Socks5代理后Gradle运行不正常
第一次在Mac上运行Android Studio,遇到了一系列问题,其中一个代理问题搞得我是不知所措,在此记录. 如果你遇到了如下图的问题,那么恭喜你你可能已经找到了解决方案也就是本文: 一般,我们为 ...