crontab 的输出中出现“/bin/sh: 1: 语法错误:意外重定向”

crontab 的输出中出现“/bin/sh: 1: 语法错误:意外重定向”

在 crontab 中我有这个作业脚本:

0 5 * * * /home/user/job_h.bash > /home/user/log_h.log > 2&1 

其中job_h.bash包含:

#!/usr/bin/env bash
set -e
source /home/user/pyenv/test/bin/activate
python3 /home/user/pyenv/test/d_h.py
deactivate

但是它输出"/bin/sh: 1: Syntax error: redirection unexpected"

你能帮我理解一下吗?我很确定我使用的是正确的 shebang,但最终 python 没有执行

答案1

我几乎可以肯定你的 stderr 重定向是错误的。(最后 3 个字符)尝试

  home/user/job_h.bash > /home/user/log_h.log 2>&1 

问题在于您的命令,正如所写,试图两次重定向 stdout。

相关内容