当前位置: 代码网 > 服务器>网站运营>运维 > 浅析Wind和Linux中查看端口占用情况和Kill(附代码)

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

2025年03月30日 运维 我要评论
之前的文章《一文讲解macos常用终端命令(附代码)》中,给大家了解了一文讲解macos常用终端命令。下面本篇文章给大家了解wind和linux中查看端口占用情况和kill,我们一起看看怎么做。端口占
之前的文章《一文讲解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(附代码)的详细内容,更多请关注代码网其它相关文章!

(0)

相关文章:

  • phpstudy V8 报403错误怎么办

    新版phpstudy v8为了安全,取消了apache和nginx列出目录内容。解决这个错误可以打开列出目录内容功能、添加默认文档。phpstudy v8 报403错误的解决方法:…

    2025年03月30日 网站运营
  • cmd查看java版本的命令是什么

    查看java版本的命令是“java -version”,具体操作方法:1、使用“win+r”键打开“运行”窗口;2、在“运行”窗口中,输入“cmd”,点击“确定”;3、cmd运行窗…

    2025年03月30日 网站运营
  • phpstudy2018的安装与使用

    很多刚开始学习php的新手在面对mysql、apache、php的安装和环境的配置过程中,总会因为自身电脑的软件环境与一些教程的环境有所差异,从而导致安装过程中出现一些问题,最终使…

    2025年03月30日 网站运营
  • win10桌面图标隔开很宽怎么办

    win10桌面图标隔开很宽怎么办

    win10桌面图标隔开很宽的解决办法:1、打开注册表编辑器;2、复制与粘贴相应路径到顶部的地址栏;3、设置iconspacing与converticalspac... [阅读全文]
  • 解决phpstudy2018使用过程中出现的一些问题?

    解决phpstudy2018使用过程中出现的一些问题?

    1.出现apach与mysql无法正常启动的    a.首先确认自己启动了没    b.如果启动了依旧没有出现上图情况          在界面的 其他菜单选项... [阅读全文]
  • cmd下怎么支持telnet命令

    方法:1、打开开始菜单,点击“控制面板”;2、点击“程序”-“打开或关闭windows功能”;3、勾选“telnet服务器”和“telnet客户端”,点击“确定”即可。本教程操作环…

    2025年03月30日 网站运营

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com