老男孩教育每日一题-第85天-下面这个脚本直接执行没有问题,在定时任务中有问题,什么原因?
2017-07-04 21:52
573 查看
脚本内容:
往期题目索引http://lidao.blog.51cto.com/3388056/1914205
[root@oldboy36 scripts]# cat /server/scripts/ip.sh #!/bin/bash IP=$(ifconfig eth0 |awk -F "[ :]+" 'NR==2{print $4}') echo "ip:$IP" >> /tmp/ip.txt 定时任务: [root@oldboy36 scripts]# crontab -l * * * * * /bin/bash /server/scripts/ip.sh &> /dev/null
定时任务执行后的结果:
[root@oldboy36 scripts]# cat /tmp/ip.txt ip: ip: ip: ip:
参考答案:
原因:
此脚本在定时任务中没有取出ip,说明ifconfig命令没有执行成功,就是没有找到ifconfig,与PATH环境变量有关,PATH环境变量在/etc/profile文件中设置,而定时任务却是以nologin方式调用脚本,不会加载/etc/profile,所以导致此脚本在定时任务中执行失败解决
方法1:
在脚本中ifconfig 命令写全路径 /sbin/ifconfig查看结果如下[root@oldboy36 scripts]# cat /tmp/ip.txt ip: ip: ip: ip:
ip:
ip:10.0.0.101
ip:10.0.0.101
方法2:
在脚本中加入 source /etc/profile备注
今天是每日一题陪伴大家的第85天,期待你的进步。对于题目和答案的任何疑问,请在博客评论区留言。往期题目索引http://lidao.blog.51cto.com/3388056/1914205
相关文章推荐
- 老男孩教育每日一题-第112天-下面这个scp命令使用有什么问题?
- 老男孩教育每日一题-第102天-如何找出/usr/local 下面所有shell脚本文件,并设置执行权限?
- 老男孩教育每日一题-2017年5月7日-加餐-linux下面如何实现,执行rm命令,就显示do not use rm command
- 老男孩教育每日一题-第82天-发现文件系统只读了,是什么原因?如何解决?
- 在linux中执行shell脚本,当前用户执行没有问题,设置为定时任务却报错
- 老男孩教育每日一题:第6天-将前端运行的服务或脚本,如何可以放置到后端进行执行
- 老男孩教育每日一题-第98天-shell知识点:shell脚本中字符串截取的常用用法?
- linux直接执行shell脚本正常,使用定时任务crontab执行出错
- 老男孩教育每日一题第120天-如何统计脚本执行的时间?
- shell脚本直接执行没有问题,crontab定时执行失败的解决方法
- 老男孩教育每日一题-第86天-nfs客户端挂载信息写入/etc/fstab中,系统重启,没有自动挂载是什么原因?
- 老男孩教育每日一题-第99天-服务器上有哪些常用的操作系统,各有什么特点?
- shell脚本直接执行没有问题,crontab定时执行失败的解决方法
- linux定时任务,手动执行脚本没有问题,放入定时任务不行
- freebsd下面crontab定时任务不能自动执行原因排查
- shell脚本直接执行没有问题,crontab定时执行失败的解决方法
- 老男孩教育每日一题-第65天-编写脚本,取出/tmp目录下面的所有文件的第一行
- shell脚本直接执行没有问题,crontab定时执行失败的解决方法
- 老男孩教育每日一题:2017年3月9日-请解释下面Shell脚本中if开头的整行代码的意思及应用场景吗?
- MySQL定时执行脚本(计划任务)命令实例