Linux 从bash脚本和crontab启动Qt应用程序
我有一个重要的Qt应用程序(bot来执行重复性任务),但经常出现问题,应用程序关闭。在bash脚本中找到了解决方案I。脚本检查进程是否存在-当应用程序自动关闭时,再次运行它。当我在终端中运行脚本时——一切正常,Qt应用程序再次启动。 问题出在crontab中。脚本及时执行,但不会启动我的应用程序。可以在crontab中执行此操作吗 Bash脚本(使用chmod 777): Crontab:Linux 从bash脚本和crontab启动Qt应用程序,linux,bash,qt,ubuntu,crontab,Linux,Bash,Qt,Ubuntu,Crontab,我有一个重要的Qt应用程序(bot来执行重复性任务),但经常出现问题,应用程序关闭。在bash脚本中找到了解决方案I。脚本检查进程是否存在-当应用程序自动关闭时,再次运行它。当我在终端中运行脚本时——一切正常,Qt应用程序再次启动。 问题出在crontab中。脚本及时执行,但不会启动我的应用程序。可以在crontab中执行此操作吗 Bash脚本(使用chmod 777): Crontab: */1 * * * * /PATH_TO_MY_SCRIPT 在终端中运行env-ish-c'/PATH
*/1 * * * * /PATH_TO_MY_SCRIPT
在终端中运行
env-ish-c'/PATH\u TO_MYSCRIPT'
,以更接近地模拟cron用于运行脚本的环境。您可能必须通过设置DISPLAY
变量来告诉Qt应用程序在何处显示其窗口。现在,我收到了“QXcbConnection:Cannot connect to DISPLAY”消息,将DISPLAY设置为您的显示器!我设置显示。。。互联网上显示:0[gui\u appname]。我尝试了*/1****env DISPLAY=:0/PATH\u TO\u MY\u APP
,但它也不起作用。显然,终端中的这个命令运行正确。我也尝试了解决方案,我在这里找到了,但也不起作用。好的。。。我向根crontab添加了任务,我想知道为什么它不起作用。命令export DISPLAY=:0&&/PATH
解决了问题。
*/1 * * * * /PATH_TO_MY_SCRIPT