如何每 10 秒执行一次命令(没有 cron)?

UAd*_*ter 39 bash cron

当我执行cron我得到这个错误

cron:无法打开或创建/var/run/crond.pid:权限被拒绝

那么,如何做到没有cron呢?

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

enz*_*tib 66

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

替代方法是watch命令:

watch -n10 command args
Run Code Online (Sandbox Code Playgroud)

最后,为了更有效地监视文件系统事件,您可以使用inotifywait, from inotify-toolspackage.

  • 值得注意的是,也许您最好将命令括在双引号内,否则最终可能会得到意想不到的结果。`watch -n<timeout> "command(s) arg(s)"` 类似于 `watch -n2 "ps ux | grep ss5"` (2认同)

Ano*_*ous 35

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

#!/bin/sh
while [ true ]
do
    sh special_svn_script.sh
    sleep 10
done
Run Code Online (Sandbox Code Playgroud)

  • `while true` 不需要方括号,否则 "true" 被解释为字符串,并且每个字符串都和 "true" 一样好。 (5认同)