克朗

2020年12月29日15:37:38 发表评论 37 次浏览

Cron守护程序是一项服务, 使你可以在计划的时间运行脚本和程序。要执行的命令存储在名为crontab的表中。本文介绍了如何通过SSH访问crontab以及如何在计划的时间运行脚本和程序。

要使用Cron, 你需要通过SSH创建到项目的连接。要打开crontab文件, 请输入以下命令crontab -e.

请注意

你可以在以下位置找到crontab文件/ var / spool / cron目录。

使用vi编辑crontab文件

输入crontab -e命令时, vi编辑器将自动打开。

请注意

如果选择使用Nano编辑器编辑crontab文件, 请输入命令编辑器=纳米crontab -e.

Vi同时具有插入模式和命令模式。按一世打开插入模式。输入的字符将直接添加到文本中。要切换到命令模式, 请按退出。在命令模式下, 任何按下的键都将被理解为命令。

请注意

要退出vi, 请始终先从插入模式切换到命令模式。

下面列出了最重要的命令:

命令 描述
dd 删除当前行
ü 撤消上一次更改
Ĵ 汇总行
Ø 在当前行下插入新行
P 将复制的数据粘贴到光标位置
:q! 关闭编辑器而不保存更改
:wq 保存文本并关闭编辑器

crontab文件的结构和crontab语法

表格中列出了cron要执行的所有命令。该表称为crontab, 由以下几列组成:

分钟(0-59) 小时(0-23, 0 =午夜) 天(1-31) 月(1-12) 星期(0-6, 0 =星期日) 命令或目录以及脚本文件名称
* * * * * z。 B./var/www/directory/myscript.sh

该表的前5列包含有关时间的信息。你不能在这些列的条目中使用空格键。第6列包含命令或脚本文件的目录和名称。列之间用空格分隔。

请注意

输入命令时, 请确保输入完整路径。请记住, 始终在命令后加一个硬换行符(例如'\ n')。

在下一个示例中, 应该在1月1日凌晨4:01备份/ var / www / html / sites目录, 然后在1月的每个下周一再次备份:

01 04 1 1 1 cp -a / var / www / html / sites / var / www / html / backups

备份将保存到/ var / www / html / backups目录。

要每天在凌晨4:01备份/ var / www / html / sites目录, 请输入以下命令:

01 04 * * * cp -a / var / www / html / sites / var / www / html / backups

要每10分钟备份一次目录, 请输入以下命令:

* / 10 * * * * cp -a / var / www / html / sites / var / www / html / backups

要在上午8点, 上午9点和上午10点执行命令, 请以以下格式输入命令:

* 8-10 * * * cp -a / var / www / html / sites / var / www / html / backups

请注意

你也可以按照以下格式输入时间:8、9、10

要备份从1月到6月的1月到6月/ var / www / html / sites目录, 从每月1日到15日, 每天4:01 am, 4:31 am, 5:01 am和5:31 am, 请输入以下命令:

01, 31 04, 05 1-15 1, 6 * cp -a / var / www / html / sites / var / www / html / backups

使用预定义的字符串指定时间

你还可以使用预定义的字符串来指定cron作业的时间。字符串如下所示:

String 含义 替换CRONTAB文件中的以下条目
@重启 系统启动期间一次  
@每年 一年一次 0 0 1 1 *
@每年 一年一次 0 0 1 1 *
@每月 每月一次 0 0 1 * *
@每周 一个星期一次 0 0 * * 0
@日常 一天一次 0 0 * * *
@午夜 一天一次 0 0 * * *
@hourly 每小时一次 0 * * * *

使用cron执行脚本

你可以创建一个脚本来执行多个组合的命令或程序。然后, 你可以通过cron计划脚本的执行。以下示例说明了如何创建脚本和crontab条目:

  • 打开编辑器。

  • 输入以下格式的脚本:
    #!/ bin / bash
    cp -a / var / www / html / sites / var / www / html / backups
    cp -a /var/www/html/index.php / var / www / html / backups

  • 将脚本保存在/ var / www / html / cronscripts目录并命名文件。

  • 输入以下命令以执行脚本而不指定解释器:
    chmod + x /var/www/html/cronscripts/backup.sh

  • 输入命令crontab -e.

  • 在crontab表中添加一个条目。
    01 04 * * * /var/www/html/cronscripts/backup.sh

  • 要切换到命令模式, 请按退出.

  • 输入命令:wq保存更改。

显示已创建的cron作业列表

以下命令允许你查看已创建的所有cron作业的列表:

crontab -l

日志文件

cron执行的所有操作将保存在$ CRON_LOG_FILE。在大多数情况下, 此文件位于/ var / spool / cron目录。

通知事项

如果在执行cron作业期间发生错误, 则可以使用MAILTO变量来接收电子邮件通知。此变量在crontab文件中列出。你输入的电子邮件地址将收到有关cron执行的所有操作的通知。


内容

  • 使用vi编辑crontab文件
  • crontab文件的结构和crontab语法
  • 使用预定义的字符串指定时间
  • 使用cron执行脚本
  • 显示已创建的cron作业列表
  • 日志文件
  • 通知事项
  • 到达顶点
一盏木
  • 版权声明:本站原创文章,于2020年12月29日15:37:38,由 发表,共 2161 字。
  • 转载请注明:克朗 | notlogy

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: