(linux)bash脚本在延迟后运行脚本

时间:2014-07-24 14:34:19

标签: linux bash cron

在让以下工作时遇到问题。我在重新启动时添加了一个cron作业,如下所示

@reboot /home/pi/bash_script

执行包含以下

的bash脚本
#!/bin/bash

/bin/sleep 60 && /usr/bin/python /home/pi/foo.py

我还为文件做了一个chmod x,使其可执行。

但它似乎没有起作用。任何人都可以识别我的脚本中的任何错误或建议我可能采取的故障排除步骤吗?

这是我得到的错误日志

Traceback (most recent call last):
  File "/home/pi/foo.py", line 70, in <module>
    main()
  File "/home/pi/foo.py", line 65, in main
    root = tk.Tk()
  File "/usr/lib/python2.7/lib-tk/Tkinter.py", line 1712, in __init__
    self.tk = _tkinter.create(screenName, baseName, className, interactive, wantobjects, useTk, sy$
_tkinter.TclError: no display name and no $DISPLAY environment variable

1 个答案:

答案 0 :(得分:0)

尝试在脚本中使用此功能。

#!/bin/bash
exec bash -l -c '/bin/sleep 60 && /usr/bin/python /home/pi/foo.py'

或者作为crontab命令:

/bin/bash -l -c '/bin/sleep 60 && /usr/bin/python /home/pi/foo.py'