定时任务执⾏shell脚本中grep-vgrep中的坑
需求
有⼀个后台进程会异常挂掉,没有时间去看错误记录,需要暴⼒重启该进程,每次都⼿动的执⾏觉得很⿇烦,于是写了个简单的shell脚本来定时执⾏。
1. 脚本
第⼀次写的脚本
解释:⼀开始上如上图这样,./test.sh 跑⼀下,是可以的。但是⽤定时器来跑失败。
分析:
2. ps 命令将某个进程显⽰出来 。-e 显⽰所有进程。-f 全格式。
shell最简单脚本
3. grep 查字符
4. grep -v grep 是过滤掉⾃⼰执⾏的grep ,
5. awk是⽤来提取列的主要⼯具;
zhangsan 25 男
lisi 20 ⼥
上⾯的内容被空格分为三个部分,依次为zhangsan 25 男
在awk中就分别对应$1 $2 $3
print $1 就会输出zhangsanlisi
print $2的话就会输出2520
没有空格
之所以第⼀个图定时任务跑失败,本⼈认为是grep -v grep执⾏失败。导致⽆论如何都会返回进程id。换了图⼆的这种暂时可以。做出以上总结。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。