centos根据端口关闭进程

  1. 根据端口查找进程
    [root@lg ~]# netstat -nlp | grep 8830
    tcp6       0      0 :::8830                 :::*                    LISTEN      1375/java  

    其中1375为进程id

  2. 根据进程ID立刻杀死进程

    kill -9 1375
  3. 根据上面的命令,我们可以将整个关闭过程提取为shell脚本

    #!/usr/bin/env bash
    
    # 需要关闭的服务端口号
    port=8830
    
    # 管道命令,每段的逻辑如下
    # 1. 获取出进程信息
    # 2. 匹配8830的行
    # 3. 根据分隔,取出第7段文字,也就是上文中的 1375/java
    # 4. 根据 / 分隔,去除第一段文字,也就是 1375,放入变量pid中,作为下面杀死进程的参数
    pid=$(netstat -nlp | grep :${port} | awk '{print $7}' | awk -F"/" '{ print $1 }');
    
    if [[  -n  "$pid"  ]];  then
        kill -9 ${pid};
    fi
    
发布了19 篇原创文章 · 获赞 2 · 访问量 2461

猜你喜欢

转载自blog.csdn.net/Azhuzhu_chaste/article/details/97530374
今日推荐