Crontab 是一种在 Linux 和 Unix 操作系统上执行定时任务的工具。用户可以使用 crontab 命令创建、查看、修改和删除定时任务,指定任务在特定时间以特定频率运行。
一个典型的 crontab 文件包括如下七个域:
* * * * * command to be executed
- - - - -
| | | | |
| | | | ----- Day of the week (0 - 7) (Sunday is both 0 and 7)
| | | ------- Month (1 - 12)
| | --------- Day of the month (1 - 31)
| ----------- Hour (0 - 23)
------------- Minute (0 - 59)
每个域可以取以下值:
*
):表示所有可能的值。比如,在 “Minute” 域中,输入 “*” 就是所有被 60 整除的数字值。,
):值可以是一个列表,如 “3,4,5”,表示这个域的值有可能是 3、4、5。-
):表示范围,如 “10-15”,表示这个域可以取值 10,11,12,13,14 或 15。* * * * * command_to_execute
这个例子表示每分钟都执行一次 command_to_execute
。
30 5 * * * command_to_execute
这个例子表示每天的 5:30 运行 command_to_execute
。
00 03 * * 1-5 command_to_execute
这个例子表示在每周的周一到周五凌晨 3 点执行 command_to_execute
。
0 * * * * /home/user/log.sh
这个例子表示在每个小时的 0 分钟时运行 /home/user/log.sh
。
如果需要给某个文件夹定时备份,可以使用 rsync
工具把数据备份到另一台机器上。假设备份目录为 /home/user/data
,备份到远程机器 IP 为 192.168.1.100
,备份的目录为 /data/backup
,使用 rsync 命令实现备份。
先创建一个 shell 脚本 /home/user/backup.sh
,内容如下:
#!/bin/bash
/usr/bin/rsync -avz /home/user/data user@192.168.1.100:/data/backup
然后将该脚本设置为可执行文件:
chmod +x /home/user/backup.sh
接下来,在 crontab 文件中添加一行:
0 2 * * * /home/user/backup.sh
这个例子表示在每天凌晨 2 点执行 /home/user/backup.sh
脚本,可以将 /home/user/data
目录备份到 192.168.1.100
服务器的 /data/backup
目录中。
Crontab 是一种非常实用的工具,它可以帮助我们在规定的时间和频率运行脚本和命令,从而简化任务的管理。使用 crontab 时要注意理解其语法和取值范围,同时还要注意编写正确的命令和脚本。
本文链接:http://task.lmcjl.com/news/14149.html