答案1
你可能或者不得在tmp
您的家中,但您的第二个 crontab 条目引用的是/tmp
,它位于根目录下/
,而不是在 /home/alex 下。
您似乎只是用cat
空格将目录条目与命令分开,这是行不通的。
至于没有错误...检查你的邮件。crontab 中的命令输出不会出现在日志中。
请尝试以下操作:
15 * * * * /bin/cat /home/alex/hola.sh
但是,默认情况下,这也不会产生任何可见的输出;您需要在本地邮件中检查它。
答案2
脚本位置未明确指定。如果您命名的 tmp 目录实际上是 /home/alex 的子文件夹,那么您可以将脚本移动到其中,然后可以使用其绝对路径调用它:
/home/alex/tmp/hola.sh
请检查您的用户是否可以执行此脚本,即命令是否ls -l
返回“x”作为第四个字符
ls -l /home/alex/tmp/hola.sh
-rwxr-x--- alex alex 220 2021-04-26 11:55:21 /home/alex/tmp/hola.sh
如果没有,你可以用以下方法修复它,chmod u+x /home/alex/tmp/hola.sh
那么 crontab 中涉及的条目应该类似于
15 * * * * /home/alex/tmp/hola.sh
cron 作业输出通常通过电子邮件发送,但您发布的屏幕截图中的错误还报告电子邮件系统现在正在运行(“未安装 MTA...”):然后您可以使用正常重定向收集输出(stdout 和 sterr):
15 * * * * /home/alex/tmp/hola.sh >/home/alex/tmp/output.txt 2>&1