首页 > 代码库 > crontab定时任务中文乱码问题

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定时任务中文乱码问题