liunx 查杀进程

查询进程
linux-mgg8:~ # ps -ef|grep httpd
root     21488 21139  0 19:20 pts/0    00:00:00 grep httpd
root     28453     1  0 00:07 ?        00:00:02 /home/eweb/httpd/bin/httpd -k start
nobody   28455 28453  0 00:07 ?        00:00:01 /home/eweb/httpd/bin/httpd -k start
nobody   28460 28453  0 00:07 ?        00:00:01 /home/eweb/httpd/bin/httpd -k start
杀掉进程
linux-mgg8:~ # kill -9 28453
linux-mgg8:~ # kill -9 28455
linux-mgg8:~ # kill -9 28460


根据端口杀进程
netstat -tlnp|grep 8080 
netstat -lna|grep 8080
tcp        0 108865 10.107.193.240:8080     10.107.193.186:47394    FIN_WAIT1

kill -9 $(netstat -tlnp|grep 8080|awk  '{print $7}'|awk -F '/' '{print $1}')



1.一进程确定占用某一tcp端口,如下命令可以杀掉该进程。

Shell代码 
kill -9 $(netstat -tlnp|grep 1099|awk  '{print $7}'|awk -F '/' '{print $1}')  

kill -9 $(netstat -tlnp|grep 1099|awk  '{print $7}'|awk -F '/' '{print $1}')

其中1099为端口号。注意:
得写出完整端口号,否则易错杀其他进程。
7是进程信息所处的列号,不同Linux可能不同,需要调整。


2.两应用程序service1和service2,service2依赖service1,即得等service1启动后才能启动,若service1应用占用一确定的tcp端口,如下脚本可实现该操作:

Shell代码 
echo "service1 start..."    
./service1.sh     
    
netstat -tlnp|grep 2098    
until [ "$?" -eq "0" ]     
do    
    echo "waiting service1 to startup..."    
    sleep 1    
    netstat -tlnp|grep 2098    
done     
echo "service1 started."    
./service2.sh     
echo "service2 started."  


猜你喜欢

转载自qingwu1205.iteye.com/blog/1567245