当前位置: 首页>>技术教程>>正文


bash – 如何每10秒执行一次命令(无cron)?

,

问题描述

当我执行cron时出现此错误

cron: can’t open or create /var/run/crond.pid: Permission denied

因此,没有cron怎么办?

附言我想检查svn中的文件是否已更改,并且有一个特殊的脚本。

最佳方案

要访问您的个人cron配置,您应该使用命令crontab -e(以编辑cron表)。

替代方法是watch命令:

watch -n10 command args

最后,为了更有效地监视文件系统事件,可以使用inotify-tools软件包中的inotifywait

次佳方案

您可以编写一个while循环中包含sleep的Shell脚本。

#!/bin/sh
while [ true ]
do
    sh special_svn_script.sh
    sleep 10
done

第三种方案

gnome-schedule(使用软件中心单击Install now!的按钮)是一种图形用户界面,利用vixie-cron,dcron和at的功能来管理crontab文件,并提供了一种在计算机上安排任务的简便方法。它支持循环(定期)任务以及将来仅发生一次的任务。它是使用pygtk用Python编写的。

很棒的功能

  • 支持任务的自定义标题和图标,以便更轻松地跟踪它们

  • 支持模板,因此您不必一次又一次地创建相同的任务;这些文件保存在gconf中,可以很容易地随Linux发行版一起提供

  • 如果以root用户身份运行,则可以编辑任何用户的crontab和”at”任务。

  • 像”Every hour”这样的Human-readable字符串,而不是“ 0 * * * *”

  • crontab专家的高级模式

  • 提供”panel applet”,您可以在其中从下拉菜单管理任务

  • 预定义的常用表达式,例如:每分钟,每周,明天,下周日历允许您选择要执行任务的日期

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/9506.html,未经允许,请勿转载。