使用crontab定时器出现中文乱码问题

符号 阅读:950 2020-02-28 18:44:25 评论:0

  前几个因为工作需要,要使用定时器定时启动脚本文件,以便于解决日志不正常打印问题,但是日志问题倒是解决了,却出现乱码了

今天百度了一下,结合自己的实际情况,首先,脚本里写命令echo $LANG  >> test.log,使用定时器每分钟启动一下脚本,发现每分钟输出一行空

但是关闭定时器,手动执行脚本,输出的为zh_CN.gb18030,所以原因找到了,就是定时器启动的时候和用户登录的时候启动的环境变量不一样,crontab

定时启动的时候就没有执行环境变量,属于unlogin登录模式的启动,

  划重点!解决办法,

  在执行执行脚本的命令行之上加入以下命令

  export LC_ALL=zh_CN.gb18030
  export LANG=zh_CN.gb18030

  再次定时执行脚本,发现已经可以有系统编码格式输入到了test.log中

  至于到底加zh_CN.GBK还是加zh_CN.gb18030或者加zh_CN.uft-8,根据自己的实际情况,

  用户登录以后,可以先查看一下自己编码格式,输入命令locale回车,可以查看当前用户登录的编码格式,

  然后再根据自己的实际情况进行修改。

  

  

  

  

  

标签:linux
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

关注我们

一个IT知识分享的公众号