linux/unix下执行crontab定时任务中文乱码问题
linux下执行crontab 定时任务时,中文会出现’?’乱码问题,但是手动执行脚本不会出下乱码问题,这是环境变量问题引起,本人今天通过网上帮助解决了这个问题,是环境变量引起的。
因为Unix/Linux下使用crontab时的运行环境已经不是用户环境了,因此原本用户下的一些环境变量的设 置就失效了。例如原来用户环境变量设置的是GB2312,但是使用crontab运行时的环境变量就可能是ISO8859-1。所以解决办法只需要在执行的脚本最前面加上当前环境的lang环境就行。即先获取当前语言环境,echo $LANG,例如输出en_US.UTF-8,然后在脚本最前面增加一行export LANG=en_US.UTF-8 。