浅析Wind和Linux中查看端口占用情况和Kill(附代码)

奋力向前
发布: 2021-09-03 09:46:09
转载
4607人浏览过
之前的文章《一文讲解MacOS常用终端命令(附代码)》中,给大家了解了一文讲解MacOS常用终端命令。下面本篇文章给大家了解Wind和Linux中查看端口占用情况和Kill,我们一起看看怎么做。

浅析Wind和Linux中查看端口占用情况和Kill(附代码)

端口占用情况和Kill(Window & Linux)

Windows 使用

window中的netstat

  • -a 显示所有连接和侦听端口。

  • -n 以数字形式显示地址和端口号。

  • -o 显示拥有的与每个连接关联的进程ID。

查看所有端口占用情况

netstat  -ano
登录后复制

查看被占用端口3306对应的PID

netstat -ano | findstr 3306
登录后复制

查看指定端口3306的PID进程

tasklist | findstr 3306
登录后复制

结束进程

强制(/F参数)杀死 pid 为 12345 的所有进程包括子进程(/T参数): 

taskkill /T /F /PID 12345
登录后复制

Linux使用

使用netstat命令

-t (tcp)仅显示tcp相关选项

-u (ucp)仅显示ucp相关选项-n拒绝显示别名,能显示数字的全转成数字

-l 仅列出有在Listen(监听)的服务状态

-p 显示建立相关链接的程序名

看当前所有已经使用的端口情况

netstat   -nultp
登录后复制

查看某个端口使用情况

netstat   -anp |grep 3306
登录后复制

使用lsof命令

  • 默认 : 没有选项,lsof列出活跃进程的所有打开文件

  • 组合 : 可以将选项组合到一起,如-abc,但要当心哪些选项需要参数

  • -a : 结果进行“与”运算(而不是“或”)

  • -l : 在输出显示用户ID而不是用户名

  • -h : 获得帮助

  • -t : 仅获取进程ID

  • -U : 获取UNIX套接口地址

  • -F : 格式化输出结果,用于其它命令。可以通过多种方式格式化,如-F pcfn(用于进程id、命令名、文件描述符、文件名,并以空终止)

lsof -i:3306
登录后复制

常用

  • lsof abc.txt 显示开启文件abc.txt的进程

  • lsof -i :22 知道22端口现在运行什么程序

  • lsof -c abc 显示abc进程现在打开的文件

  • lsof -g gid 显示归属gid的进程情况

  • lsof +d /usr/local/ 显示目录下被进程开启的文件

  • lsof +D /usr/local/ 同上,但是会搜索目录下的目录,时间较长

  • lsof -d 4 显示使用fd为4的进程

  • lsof -i 用以显示符合条件的进程情况

  • lsof -p 12 看进程号为12的进程打开了哪些文件

  • lsof +|-r [t] 控制lsof不断重复执行,缺省是15s刷新

  • lsof -r,lsof会永远不断的执行,直到收到中断信号

  • lsof +r,lsof会一直执行,直到没有档案被显示

  • lsof -s 列出打开文件的大小,如果没有大小,则留下空白

  • lsof -u username 以UID,列出打开的文件

使用ps命令

命令参数:

  • a 显示所有进程

  • -a 显示同一终端下的所有程序

  • -A 显示所有进程

  • c 显示进程的真实名称

  • -N 反向选择

  • -e 等于“-A”

  • e 显示环境变量

  • f 显示程序间的关系

  • -H 显示树状结构

  • r 显示当前终端的进程

  • T 显示当前终端的所有程序

  • u 指定用户的所有进程

  • -au 显示较详细的资讯

  • -aux 显示所有包含其他使用者的行程

  • -C 列出指定命令的状况

  • --lines 每页显示的行数

  • --width 每页显示的字符数

  • --help 显示帮助信息

  • --version 显示版本显示

查找特定进程

ps -ef|grep ssh
登录后复制

输出:

chuchur@linux:~/share$ ps -ef|grep bash
chuchur        9448  79650  0 06:05 pts/4    00:00:00 grep --color=auto bash
chuchur       79650  79575  0 03:49 pts/4    00:00:00 bash
登录后复制

通过服务名字查找PID

查找 nginx 和 python 占用情况

ps aux | egrep '(nginx|python)'
登录后复制

输出:

root         951  0.0  0.3 425268 27680 ?        Ssl   2020   9:48 /usr/libexec/platform-python -Es /usr/sbin/tuned -l -P
root      212828  0.0  0.1 135300 13924 ?        Ss    2020   0:00 nginx: master process /usr/sbin/nginx
root     2488443  0.0  0.1 164676 14892 ?        S    Mar06   0:00 nginx: worker process
登录后复制

结束进程

kill命令参数

  • -1 (HUP):重新加载进程。

  • -9 (KILL):杀死一个进程。

  • -15 (TERM):正常停止一个进程。

  • -KILL 强制杀死进程

kill -9 65300 #彻底干掉pid为65530的进程

kill -9 $(ps -ef | grep guest) #干掉guest 用户进程
#or
kill -u guest
登录后复制

推荐学习:windows教程

以上就是浅析Wind和Linux中查看端口占用情况和Kill(附代码)的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
相关标签:
来源:禅境花园网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号