鼠和蛇相配吗:shell学习小记

来源:百度文库 编辑:九乡新闻网 时间:2024/04/29 03:52:12

今天遇到一个很烦操的进程alias,只要它一出现,我们的官网就无法让会员登录。
这都什么跟什么关联啊?不鸟的……
我找到了这个罪魁祸首,kill了它,但是好景不长,好家伙人家自动启动了,好吧我crontab一shell定时干死你。

#!/bin/bash

function kill_process
{
for pid in `cat $1`
do
{
echo "$pid"
kill -9 $pid
}
done

rm -rf $1
}

ps aux | grep "httpd" | grep -v "grep" | awk '{print $2}' > /tmp/httpd.pid
kill_process "/tmp/httpd.pid"


ps -a | grep "httpd" | grep -v "grep" | grep -v grep | awk '{printf("kill -9 %s\n",$1)}' | sh


但是,这个方法十分地不和谐也不科学,想要从根本上解决这个问题,看来要做好长期斗争,不断学习的准备。。。

附注:

ps


-e 显示所有进程。
-f 全格式。
-h 不显示标题。
-l 长格式。
-w 宽输出。

a 显示终端上的所有进程,包括其他用户的进程。
r 只显示正在运行的进程。
x 显示没有控制终端的进程。
u 以用户为主的格式来显示程序状况

最常用 ps aux 然后grep过滤

grep


-I :忽略大小写
-c :打印匹配的行数
-l :从多个文件中查找包含匹配项
-v :查找不包含匹配项的行
-n:打印包含匹配项的行和行标