如何在我的常规环境中运行cronjob?

Modified on: Sat, 30 Jun 2018 08:30:00 +0800

运行cronjobs的shell和环境变量与gnome-terminal中显示的完全不同。如何在相同的情况下运行cronjob,就像我在终端中运行它一样?

我目前的解决方案是运行cronjob env DISPLAY=:0.0 gnome-terminal -e my-command,但这会弹出一个gnome-terminal,这是不可接受的。

作者:Gilles,user4518

最佳答案

您可以在crontab的顶部显式指定所需的环境变量,也可以从某个地方获取环境。

要显式添加环境变量,您可以在脚本顶部使用这样的行(在hashbang之后):

FOO=bar

要从文件中获取它们,请使用如下所示的行:

. /foo/bar/baz

为了回应您的问题编辑以包含gpg-agent,您应该能够获取~/.gpg-agent-info来获取$GPG_AGENT_INFO。如果它不存在,请尝试使用gpg-agent启动--write-env-file "${HOME}/.gpg-agent-info"

作者:,Chris Down

相关问答

添加新评论