crontab定时任务中文乱码问题

Posted 蚂蚁力量

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了crontab定时任务中文乱码问题相关的知识,希望对你有一定的参考价值。

crontab启动的任务没有获取系统的环境变量,导致中文乱码
解决办法:
   在执行的脚步中添加编码方式或者添加对应的环境变量
如:
1、/usr/bin/java -Dfile.encoding=UTF-8 -jar ALDTool.jar (未测试)
2、在脚本开头增加:
export LANG="en_US.UTF-8"
 
实例:
环境变量:locale的设定LC_ALL为 “en_US.UTF-8"  注:设定了LC_ALL就不用设置其他的了,他会强制覆盖掉LC_*.设置部分LC_*和LANG,没有设置的LC_*采用的是LANG的值。

crontab 执行:
#export LANG="en_US.UTF-8"
#!/bin/bash
echo "汉字!"|mail -s " 标题" \'Huang@123.com\'
 
汉字乱码,没有读取到环境变量中的LC_ALL值;
export LANG="en_US.UTF-8"
#!/bin/bash
echo "汉字!"|mail -s " 标题" \'Huang@123.com\'

以上是关于crontab定时任务中文乱码问题的主要内容,如果未能解决你的问题,请参考以下文章

定时任务crontab

crontab定时任务

crontab 定时任务

linux定时任务(crontab)

Crontab定时任务

centos7 ubuntu crontab定时任务