Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 从bash脚本和crontab启动Qt应用程序_Linux_Bash_Qt_Ubuntu_Crontab - Fatal编程技术网

Linux 从bash脚本和crontab启动Qt应用程序

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

我有一个重要的Qt应用程序(bot来执行重复性任务),但经常出现问题,应用程序关闭。在bash脚本中找到了解决方案I。脚本检查进程是否存在-当应用程序自动关闭时,再次运行它。当我在终端中运行脚本时——一切正常,Qt应用程序再次启动。 问题出在crontab中。脚本及时执行,但不会启动我的应用程序。可以在crontab中执行此操作吗

Bash脚本(使用chmod 777):

Crontab:

*/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