crontab 中文乱码问题

 原本可以正常执行的脚本放到crontab调度后,遇到了中文乱码问题。脚本在shell环境下直接运行没有问题。

结论是Unix/Linux下使用 crontab时的运行环境已经不是用户环境了,因此原本用户下的一些环境变量的设置就失效了。

例如原来用户环境变量设置的是GB2312,但是使用 crontab运行时的环境变量就可能是ISO8859-1。

解决方法:
#!/bin/bash
export LANG=en_US.UTF-8
cd /home/work/work/Monitor
java -jar ETLMonitor-0.0.3-SNAPSHOT.jar DATABAE1 >> log/check.log
java -jar ETLMonitor-0.0.3-SNAPSHOT.jar DATABAE2 >> log/check.log
java -jar ETLMonitor-0.0.3-SNAPSHOT.jar DATACDS2 >> log/check.log
java -jar ETLMonitor-0.0.3-SNAPSHOT.jar FLOATCDS2 >> log/check.log
java -jar ETLMonitor-0.0.3-SNAPSHOT.jar DATABAE3 >> log/check.log
 

猜你喜欢

转载自ganliang13.iteye.com/blog/1749806