Linux获取监听指定端口的进程PID 小编 发布:2026-09-16 更新:2026-09-16 浏览: 加入收藏 在 Linux 下经常需要杀死(重启)监听某端口的进程, 因此就写了一个小脚本, 通过 ss 命令获取监听制定端口的进程 PID, 然后通过 kill 命令结束掉进程: #!/bin/sh # set -x [[ $# -lt 1 ]] && { echo 'param error: must have one param(port)'; exit -1; } [[ $# -gt 1 ]] && { echo 'param error: only support one param(port)'; exit -1; } function get_pid_by_listen_port() { pattern_str="*:$1b" pid=$(ss -n -t -l -p | grep "$pattern_str" | column -t | awk -F ',' '{print $(NF-1)}') # 当版本号为 "ss utility, iproute2-ss161009" 时, ss 命令输出格式为: # LISTEN 0 5 *:8000 *:* users:(("python2.7",pid=7130,fd=3)) # 此时需要进一步处理, 只获取进程 PID 值. [[ $pid =~ "pid" ]] && pid=$(echo $pid | awk -F '=' '{print $NF}') echo $pid } pid=$(get_pid_by_listen_port $1) if [ -n "$pid" ] then echo "find pid: $pid, kill it..." kill $pid else echo 'cannot find listened port: '$1 exit -1 fi 如果只是想放入 .bashrc 或 .zshrc 的话, 可以使用下面这个版本: function kill_pid_by_listen_port() { [[ $# -lt 1 ]] && { echo 'param error: must have one param(port)'; return -1; } [[ $# -gt 1 ]] && { echo 'param error: only support one param(port)'; return -1; } pattern_str="*:$1b" pid=$(ss -n -t -l -p | grep "$pattern_str" | column -t | awk -F ',' '{print $(NF-1)}') # 当版本号为 "ss utility, iproute2-ss161009" 时, ss 命令输出格式为: # LISTEN 0 5 *:8000 *:* users:(("python2.7",pid=7130,fd=3)) # 此时需要进一步处理, 只获取进程 PID 值. [[ $pid =~ "pid" ]] && pid=$(echo $pid | awk -F '=' '{print $NF}') [[ -n "$pid" ]] && { "find pid: $pid, kill it..." } [[ -n "$pid" ]] || { echo "not found listened port: $1" } } 想了解更多关于Linux获取监听指定端口的进程PID的内容,关注我们! SEO网站提示 1、当你在网上看到Linux获取监听指定端口的进程PID 标题时,SEO网站尽可能为你提供更多关于Linux获取监听指定端口的进程PID 的内容及相关文章,你还可以在百度进行Linux获取监听指定端口的进程PID 关键词搜索相关内容进行查询! 2、SEO网站声明:你所看到的关于Linux获取监听指定端口的进程PID 内容都来源于网络,不保证外部链接及内容的准确性和完整性,在2026-09-16 02:10:10收录时该网页内容属于合规合法,后期如出现违规可联系管理员删除,本站不承担任何责任。 3、温馨提示:"Linux获取监听指定端口的进程PID "浏览人数已达到,如需查询官方网站的权重及收录信息,可点击爱站网、站长之家、5118进入查询更多数据! 4、本网站文章部分内容可能来源于网络,仅供学习与参考,如有侵权请联系站长删除处理。 SEO网站官方网址:https://seolxw.com