客户的服务器有cron运行。在旧的系统中正常。网站转移到我们新的服务器上,cron也完全copy。查看cron记录显示命令也运行了。但通过PHP文件生成的html文件没有内容。
将shell 脚本的错误输出重定向到一个文件。
/root/test.sh 2> /home/admin/test.txt 将test.sh脚本的错误输出重定向到/home/admi/test.txt文件。
打开test.txt文件:-bash: /root/test.sh : /bin/ksh^M: bad interpreter :No such file or directory
网上查了下资料。是文件格式导致的,查看下test.sh的格式:
vi test.sh
输入:set ff? 查看文件格式,出现 ileformat=dos,文件是DOS格式。使用:set ff=unix 强制将文件转换为unix格式。:wq 保存退出。再次域名test.sh脚本。文件正常输出。
本文介绍了一个关于服务器Cron任务的问题排查过程。客户网站转移后,原本正常运行的Cron任务生成的HTML文件为空。通过检查发现是由于shell脚本格式为DOS格式导致的错误输出。文章详细描述了如何识别问题并将其转换为Unix格式来解决问题。
764

被折叠的 条评论
为什么被折叠?



