Crontab 没有运行 actiona 命令

Crontab 没有运行 actiona 命令

我有一个 actiona 程序,我想在我的 Ubuntu 笔记本电脑上每小时运行一次。

actiona -s -E -C -Q -e -x '/home/myusername/actionatest.ascr'

我在终端上测试了它并且它可以工作。

但是当我尝试将其放入 cron 中时,如下所示:

* * * * * actiona -s -E -C -Q -e -x '/home/myusername/actionatest.ascr'

它没能运行。

我已经制作了脚本,当我从终端执行它时,脚本正在运行。但是当我把它放在 cron 中时,脚本根本没有运行

我已经尝试了调试代码,这是我从终端运行脚本时显示的内容

+ source /home/myusername/.bashrc ++ case $- in ++ return + actiona -s -E -C -Q -e -x /home/myusername/actiona/actionatest.ascr

这是 /tmp/log 的输出

QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root' qt.qpa.screen: QXcbConnection: Could not connect to display Could not connect to any X display.

我感觉这个错误是由我应该做但却没有做的某些简单步骤导致的。

答案1

明智的做法是在你的主目录中创建脚本,如下所示:

#!/bin/bash
source /home/myusername/.bashrc
actiona -s -E -C -Q -e -x '/home/myusername/actionatest.ascr'

使其可执行

chmod 755 /home/myusername/script

并将其添加到 cron 中

* * * * * /home/myusername/script

但请注意,您每分钟都会运行该程序,因此最好调整执行计划。

要调试脚本,您可以通过以下方式修改它:

#!/bin/bash
set -x
source /home/myusername/.bashrc >>/tmp/log
actiona -s -E -C -Q -e -x '/home/myusername/actionatest.ascr' >>/tmp/log

并检查文件/tmp/log以获取更多信息

相关内容