crontab 如何将输出重定向到一个文件?

时间:2021-02-20 16:24:35

[root@vm zhimin]# crontab -l
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root

#40 3 * * * root mysqldump --single-transaction --flush-logs -uroot -proot -R --default-character-set=utf8 ismart | gzip > /home/zhimin/cs_`date "+\%Y-\%m-\%d"`.sql.gz
45 8 * * * root ll > /home/zhimin/ll.txt

[root@vm zhimin]#


执行之后,可以在指定目录下找到 ll.txt 文件,但是内容是空,文件大小为0
单独执行 ll > /home/zhimin/ll.txt,可生成 ll.txt 文件,里面的内容也正常

原本是想在每天早上3点40分对数据库进行一次全量备份,但没想到备份出来的内容居然全部是空。
crontab 的这个情况~!只能说,唉~!!

6 个解决方案

#1


遇到同样的问题 期待结果

#2


到底有木有人啊

这个是100分的问题啊

#3


ll 后面跟全路径

#4


引用 3 楼 fan63182830 的回复:
ll 后面跟全路径


没用,一样的结果,后面的文件内容还是空
如果说后面没有带路径,结果为空,那么把命令改为 date >> /home/zhimin/test.txt,也是空

#5


已经解决了

在命令行下,使用 crontab -l 是查看当前用户的 crontab,用 crontab -e 是编辑当前用户的 crontab
并且通过编辑之后,会在 /usr/spool/cron 目录下生成相应用户的配置文件内容

因此,既然已经指定了用户,则那么在 crontab -e 编辑的命令内容里,就不需要再指定用户名了

#6


直接在脚本中将结果重定向不就得了

#1


遇到同样的问题 期待结果

#2


到底有木有人啊

这个是100分的问题啊

#3


ll 后面跟全路径

#4


引用 3 楼 fan63182830 的回复:
ll 后面跟全路径


没用,一样的结果,后面的文件内容还是空
如果说后面没有带路径,结果为空,那么把命令改为 date >> /home/zhimin/test.txt,也是空

#5


已经解决了

在命令行下,使用 crontab -l 是查看当前用户的 crontab,用 crontab -e 是编辑当前用户的 crontab
并且通过编辑之后,会在 /usr/spool/cron 目录下生成相应用户的配置文件内容

因此,既然已经指定了用户,则那么在 crontab -e 编辑的命令内容里,就不需要再指定用户名了

#6


直接在脚本中将结果重定向不就得了