Linux服务器使用Crontab控制定时任务

Crontab,可以将任何脚本、程序或文档安排在某个最方便的时间运行。通俗的讲就是定时执行某个脚本、程序。 常见用途: 定时关机 定时检查更新 定时对系统配置、数据库、日志进行备份 定时清理垃圾文件

检测是否已安装

crontab -bash: crontab: command not found

执行 crontab 命令如果报 command not found,就表明没有安装. 开始安装

#yum -y install vixie-cron crontabs -y

crontab 并不支持-h或–help之类的选项,不过还是可以通过它查看命令帮助

# crontab -h

也可以使用 info crontab 命令查看详细的帮助信息。 cron服务提供crontab命令来设定cron服务的,以下是这个命令的一些参数与说明:

crontab -u //设定某个用户的cron服务,一般root用户在执行这个命令的时候需要此参数 crontab -l //列出某个用户cron服务的详细内容 crontab -r //删除没个用户的cron服务 crontab -e //编辑某个用户的cron服务

比如说root查看自己的cron设置:

crontab -u root -l

再例如,root想删除fred的cron设置:

crontab -u fred -r

在编辑cron服务时,编辑的内容有一些格式和约定,输入:

crontab -u root -e

进入vi编辑模式,编辑的内容一定要符合下面的格式:/1 * * * ls >> /tmp/ls.txt ---------------------------------------------------------------------------------------------------------------------------- Crontab配置方法: 重点来了: 每个用户可以直接修改文件 /var/spool/cron/user来控制/etc/crontab文件,root的话就是

/var/spool/cron/root

直接编辑此文件即可自动化运行,示例:

echo "0 1 * * * /sbin/reboot > /dev/null 2>&1" >> /var/spool/cron/root

这个脚本每天1点自动重启服务器 添加之后使用

crontab -l

可以看到已经添加了Crontab任务。 方法二:

echo "0 1 * * * /sbin/reboot > /dev/null 2>&1" >1.sh crontab 1.sh

意思也就是先把定时任务存为文件,在使用Crontab来调用,也可以添加成功。 添加之后使用

crontab -l

也可以看到已经添加了Crontab任务。 这样就能使得Crontab添加脚本自动化运行相关程序。 Crontab比init.d运行级别大一些,用Crontab来控制程序运行更加完美。 ---------------------------------------------------------------------------------------------------------------------------- Crontab状态控制

/sbin/service crond start //启动服务 /sbin/service crond stop //关闭服务 /sbin/service crond restart //重启服务 /sbin/service crond reload //重新载入配置 /sbin/service crond status //查看状态

或者使用

# service crond start # service crond stop # service crond restart # service crond reload # service crond status

想记录下来的也就是---之间部分。。。 附上一个Crontab定时重启服务器脚本:

#!/bin/bash #  .------------------------------------------------------------- #  | Bash Name: 服务器定时重启脚本 #  | Version: 1.0 #  | This Is a Shell Script ,Easy To Use #  | Web Site: https://4ker.cc/crontab.html #  |-------------------------------------------------------------- #  | Author: 刺猬 <a@4ker.ccc> #  | Copyright (c) 2017, https://4ker.cc All Rights Reserved. #  .-------------------------------------------------------------- echo "欢迎使用服务器定时重启脚本" echo '请输入重启服务器的时间:(示例:数字1-9,表示1-9点):' read time yum install vixie-cron crontabs -y chkconfig crond on systemctl enable crond.service service crond start /bin/systemctl start crond.service echo "0 $time * * * /sbin/reboot > /dev/null 2>&1" >> /var/spool/cron/root echo "添加成功,服务器在每天$time自动重启!" sleep 1 echo "服务器将重启使脚本生效!" reboot echo ;

» 本文链接:Linux服务器使用Crontab控制定时任务 » 转载请注明来源:刺客博客

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏康怀帅的专栏

硬盘安装 CoreOS 三节点集群

本例在 VirtualBox 虚拟机,以 ISO 或者 PXE 或者 iPXE 模式启动 CoreOS,然后安装到硬盘。 更新记录 2017/12:默认启用 D...

3456
来自专栏散尽浮华

Docker容器学习梳理--私有仓库Registry使用

但有时候使用Docker Hub这样的公共仓库可能不方便,这种情况下用户可以使用registry创建一个本地仓库供私人使用,这点跟Maven的管理类似。 使用私...

1998
来自专栏jeremy的技术点滴

基于Docker for macOS的Kubernetes本地环境搭建与应用部署

7334
来自专栏北京马哥教育

通过实例来学习使用Linux KVM

KVM是Kernel-based Virtual Machine的缩写,从名字上可以知道,KVM是在支持虚拟化硬件环境上,基于Linux操作系统内核的虚拟化技...

1862
来自专栏影子

idea/eclipse下Maven工程集成web服务(tomcat、jetty)

3429
来自专栏枕边书

LINUX下的PHP

由于linux系统的稳定性,大部分的PHP服务器都被部署在linux上,而且像redis等扩展在linux能得到更好的支持,所以对于PHP程序员来说,使用lin...

1868
来自专栏惨绿少年

linux中必会的目录

第1章 find命令扩展 1.1 方法一 |xargs 通过|xargs将前面命令的执行结果传给后面。 [root@znix ~]# find /oldboy/...

2560
来自专栏王小雷

Ubuntu16.04安装Docker1.12+开发实例+hello world+web应用容器

本次主要是详细记录Docker1.12在Ubuntu16.04上的安装过程,创建Docker组(避免每次敲命令都需要sudo),Docker常用的基本命令的总结...

2528
来自专栏Java成长之路

局域网中连接windows环境下的oracle数据库

将该TNS信息配置到同事本地的tnsnames.ora文件,使用pl/sql developer无法连接,报错TNS-12535: TNS操作超时1。

651
来自专栏云计算教程系列

如何将Ubuntu升级到18.04最新版

Ubuntu操作系统的最新长期支持(LTS)版本Ubuntu 18.04(Bionic Beaver)于2018年4月26日发布。本教程将讲解如何将16.04或...

2196

扫码关注云+社区