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,如需转载请自行联系原作者

相关文章
|
Shell
设置shell脚本执行错误自动退出
设置shell脚本执行错误自动退出
929 0
|
3月前
|
Shell
一个用于添加/删除定时任务的shell脚本
一个用于添加/删除定时任务的shell脚本
121 1
|
8月前
|
前端开发 微服务 Windows
PowerShell 命令窗口执行 pnpm 命令报错 无法加载文件 pnpm.ps1,因为在此系统上禁止运行脚本
PowerShell 命令窗口执行 pnpm 命令报错 无法加载文件 pnpm.ps1,因为在此系统上禁止运行脚本
|
Shell Android开发
crontab执行脚本报错手动执行正确
crontab执行脚本报错手动执行正确
shell脚本之---一键同步脚本
shell脚本之---一键同步脚本
shell 防止脚本重复运行
shell 防止脚本重复运行
|
SQL Shell Linux
如何用crontab每隔1分钟执行一个命令行脚本,shell设定时任务
如何用crontab每隔1分钟执行一个命令行脚本,shell设定时任务
894 0