crontab中执行脚本中文乱码,手动执行没有问题的解决办法

简介:

【问题描述】

今日编写的脚本手动执行后发送邮件时中文字符不乱码,后放到定时任务中后乱码。如下图:

wKiom1ZF6ViDaDOIAAAuGzgbSik732.jpg

【产生原因】
crontab中的运行环境与用户的shell环境不一致,两种环境下的字符编码不同。

【解决办法】

1.获取当前系统下环境变量LANG的值,可用echo $LANG命令查看。

1
2
# echo $LANG
en_US.UTF-8

2.在脚本中声明LANG变量,将以下内容粘到脚本最前面即可。

1
export  LANG=en_US.UTF-8

【解决后】

wKioL1ZF7CSh78giAACF9rsbHDs713.jpg

熟悉的中文又回来了。。。



本文转自 xoyabc 51CTO博客,原文链接:http://blog.51cto.com/xoyabc/1712627,如需转载请自行联系原作者

目录
打赏
0
0
0
0
265
分享
相关文章
设置shell脚本执行错误自动退出
设置shell脚本执行错误自动退出
962 0
如何用crontab每隔1分钟执行一个命令行脚本,shell设定时任务
如何用crontab每隔1分钟执行一个命令行脚本,shell设定时任务
931 0
shell之通过if [ $? != 0 ]判断上次程序是否执行成功
shell之通过if [ $? != 0 ]判断上次程序是否执行成功
759 0
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等