我想cron从特定的 shell (Zsh) 运行脚本。我认为以下方法可行:
00 02 * * * exec zsh; /path/to/script.sh
Run Code Online (Sandbox Code Playgroud)
但显然不是,为什么?
这也让我不知道,我怎么找出外壳和init脚本并cron运行之前,首先运行在crontab中的条目?
怎么样:
00 02 * * * exec /usr/bin/zsh /path/to/script.sh
Run Code Online (Sandbox Code Playgroud)
这将告诉 zsh 运行脚本。现在你想让它在 zsh 中运行无关紧要,只需在开始时添加shebang:
#!/usr/bin/zsh
the_rest
Run Code Online (Sandbox Code Playgroud)