背景:huskiesir最近用公司给分配的账户写了脚本去检测某应用状态并发送到企业邮箱,写完脚本之后去执行了一下,发现效果还不错,在邮箱显示效果如下: 10.11.116.6 检查结果OK,检查时间:2018-11-16_15:26:04 但是呢,经过crontab自动执行以后 ...
原脚本代码 手动执行脚本结果和预想的一致 结果 但是加入crontab定时任务后,执行的结果却是错误的。 原因 这是因为if里的比较字符串用了 ,这个比较符合在bash里是可以用的,但是在大部分的shell中都不能用,比如 bin sh, 如果将此脚本的头部声明成 bin sh,那么这段代码手动执行也是无法执行的 修正后的代码 总结 .脚本头部声明用 bin sh,因为这个shell符合posix ...
2017-06-29 13:25 0 1927 推荐指数:
背景:huskiesir最近用公司给分配的账户写了脚本去检测某应用状态并发送到企业邮箱,写完脚本之后去执行了一下,发现效果还不错,在邮箱显示效果如下: 10.11.116.6 检查结果OK,检查时间:2018-11-16_15:26:04 但是呢,经过crontab自动执行以后 ...
加上 PATH=/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin这行就好了, shell首部用 #!/usr/bin/env bash 这个移植性更好 ...
原因: crontab 没有去读环境变量,需要再脚本中手动引入环境变量,可以用source 也可以用export 写死环境变量。 为了定时监控Linux系统CPU、内存、负载的使用情况,写了个Shell脚本,当达到一定值得时候,发送邮件通知。需要用到Crontab的定时任务去执行这个脚本 ...
在需要执行的脚本里加入环境变量即可,如下图: ...
上一篇文档脚本手动能执行成功,crontab定时任务执行脚本不成功。 原因:cron的环境变量和shell脚本的环境变量不一样 解决办法: #方法一:定时任务里面切换到root执行() */5 * * * * su - root -c "/data/pkgs/mysql/tools ...
昨晚,本想用几分钟咔咔咔的把一个自定义脚本加在zabbix里,但是测试的时候zabbix_get获取的值始终与单独执行脚本不一致。按照我这性格,不弄出来睡不着,于是又是咔咔咔弄到2点钟。最后又是被selinux坑了。记录一下排查思路: 1、zabbix agent的配置文件 2、脚本里的变量 ...
昨天在定位一个bug的时候,需要用shell脚本对字符串进行比较,出了一个小问题,就搜索总结了一下。 第一种方法:-eq 对比字符串是否相等,我首先想到的就是 -eq,然而打印的结果不正确。看笔记: -eq 检测两个整数是否相等,相等返回 true。 [ $a -eq $b ...
检查备份时发现,cron中定时备份mysql的脚本备份失败,但是手动自行mysql备份脚本却能正常成功 检查cron的环境变量: # cat /etc/crontab ... SHELL=/bin/sh PATH=/usr/local/sbin:/usr/local/bin:/sbin ...