Crontab 未通过管道传输到文件 (LINUX)

Crontab not piping to file (LINUX)

cronjob 不会将另一个脚本的输出通过管道传输到文件,但它可以运行我执行它(不是同一个用户,两个文件的 chmod 都设置为 777)。

#! /bin/sh

. /disk2/etc/env_cron
SUBJ="Test"
TEXT=/disk2/home/user/mailtxt
ADDR="mail@domain.com"

  echo -e `date` > $TEXT
  echo -e "1\n\n\nq" | menu >> $TEXT
  mutt -s "$SUBJ" -i $TEXT -- $ADDR < /dev/null

我希望它通过管道 "echo -e 1\n\n\nq" 传送到脚本菜单,然后在文件中获取输出。 Menu 的输出将只是文本。

问题(如建议的那样)是 cronjob 的路径中没有脚本 'menu'。将脚本中的 "menu" 更改为绝对路径修复了它。

echo -e "1\n\n\nq" | /folder/folder/menu >> $TEXT

编辑:如果另一个用户 运行 执行 cronjob,请不要忘记在文本文件上设置正确的权限。