关于linux下crontab下脚本执行时,获取的值不正确
2017-02-03 22:45
239 查看
本次是因为需要创建定时任务,判断SNMP服务的状态。
通过以下代码进行判断
现在snmpd服务是正常运行中的。
我通过手动执行该脚本,得到的结果是running
但是只要放到crontab,执行出来的就是stop
很是奇怪
后来,我在脚本里把每一个变量都打印出来看,发现crontab运行的言语环境为中文。
但是我export出来的明显是英文环境
一开始我没有想到这个,因为我手动执行和crontab使用的都是root账号
之后,我通过在脚本前面加入export LENG="en_US",将脚本的执行环言语定为英文后,执行的结果正常了。
对于环境变量中的言语变量,不知道为什么会出现在这样的情况,有时间去研究下。如果有哪位大神知道的,请指点一二
通过以下代码进行判断
tmp=`/etc/init.d/snmpd status` snmpd_status=`echo $tmp | grep -Eo "running" ` if [ $snmpd_status = "running" ] then snmpd_status="running" else snmpd_status="stop" fi echo $snmpd_status注:系统为red hat 5.7和6.5
现在snmpd服务是正常运行中的。
我通过手动执行该脚本,得到的结果是running
但是只要放到crontab,执行出来的就是stop
很是奇怪
后来,我在脚本里把每一个变量都打印出来看,发现crontab运行的言语环境为中文。
但是我export出来的明显是英文环境
一开始我没有想到这个,因为我手动执行和crontab使用的都是root账号
之后,我通过在脚本前面加入export LENG="en_US",将脚本的执行环言语定为英文后,执行的结果正常了。
对于环境变量中的言语变量,不知道为什么会出现在这样的情况,有时间去研究下。如果有哪位大神知道的,请指点一二
相关文章推荐
- linux关于crontab有些脚本不能定期执行
- 关于linux自动执行crontab
- 在linux下利用crontab定时执行PHP脚本
- 在linux下定时执行PHP脚本(定时执行crontab使用方法详解)
- PHP计划任务:如何使用Linux的Crontab执行PHP脚本
- 关于crontab执行shell脚本的字符编码问题
- 在linux下如何通过expect正确执行自动切换登录,并且执行命令和脚本
- PHP计划任务:如何使用Linux的Crontab执行PHP脚本
- PHP计划任务:如何使用Linux的Crontab执行PHP脚本
- 用Linux的Crontab定时执行PHP脚本的方法
- PHP计划任务:如何使用Linux的Crontab执行PHP脚本
- PHP计划任务:如何使用Linux的Crontab执行PHP脚本
- PHP计划任务:如何使用Linux的Crontab执行PHP脚本
- 【笔记】linux定时执行脚本crontab简记
- 关于linux中执行脚本自动退出的一种可能
- linux获取当前执行脚本
- [转] 关于crontab无法执行shell脚本的解决办法
- PHP计划任务:如何使用Linux的Crontab执行PHP脚本
- Linux手动执行脚本可以,但是放到定时任务 crontab 中不执行
- linux crontab执行shell脚本中包含相对路径的问题