总结查看端口、进程占用情况(lsof、netstat、ps、kill)
一、Linux查看端口占用情况
1、lsof(list open files)列出当前系统打开文件
查看指定端口号语法格式:
lsof -i:端口号
如果命令找不到
[root@bogon ~]# lsof -i:
-bash: lsof: command not found
请安装该命令
# yum install lsof -y
# lsof -i:7075
[root@localhost ~]# lsof -i:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
docker-pr root 4u IPv6 0t0 TCP *: (LISTEN)
查看所有端口
# lsof -i
[root@localhost ~]# lsof -i
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
sshd root 3u IPv4 0t0 TCP *:ssh (LISTEN)
sshd root 4u IPv6 0t0 TCP *:ssh (LISTEN)
master root 13u IPv4 0t0 TCP localhost:smtp (LISTEN)
master root 14u IPv6 0t0 TCP localhost:smtp (LISTEN)
openvpn root 6u IPv4 0t0 TCP 192.168.1.56:openvpn (LISTEN)
sshd root 3u IPv4 0t0 TCP 192.168.1.56:ssh->192.168.2.113: (ESTABLISHED)
COMMAND(进程的名称)
PID(进程的标识符)
USER(进程所有者)
FD(文件描述符)
TYPE(文件类型)
SIZE/OFF(文件大小)
DEVICE(指定磁盘名称)
NODE(索引节点)
NAME(打开文件的确切名称)
2、netstat
netstat -tunlp 用于显示 tcp,udp 的端口和进程等相关情况
netstat 查看端口占用语法格式:
netstat -tunlp | grep 端口号
- -t (tcp) 仅显示tcp相关选项
- -u (udp)仅显示udp相关选项
- -n 拒绝显示别名,能显示数字的全部转化为数字
- -l 仅列出在Listen(监听)的服务状态
- -p 显示建立相关链接的程序名
[root@localhost ~]# netstat -tunlp | grep
tcp6 ::: :::* LISTEN /docker-proxy
[root@localhost ~]#
[root@localhost ~]# netstat -tunlp | grep
tcp6 ::: :::* LISTEN /mysqld
[root@localhost ~]#
[root@localhost ~]# netstat -tunlp | grep
tcp6 ::: :::* LISTEN /docker-proxy
[root@localhost ~]#
[root@localhost ~]# netstat -tunlp | grep
[root@localhost ~]#
[root@localhost ~]# netstat -tunlp | grep
tcp6 ::: :::* LISTEN /docker-proxy
[root@localhost ~]#
在查到端口占用的进程后,如果你要杀掉对应的进程可以使用 kill 命令:
kill -9 PID
如上实例,我们看到 7075 端口对应的 PID 为 17394,使用以下命令杀死进程:
# kill -9 17394
显示网卡列表
# netstat -i
[root@localhost ~]# netstat -i
Kernel Interface table
Iface MTU RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg
docker0 BMRU
ens18 BMRU
lo LRU
veth5a87904 BMRU
vethb1d0229 BMRU
vethed2e0ba BMRU
vethee02449 BMRU
[root@localhost ~]#
3、ps(用于显示当前进程的状态)
使用PS命令查看和控制进程
显示本用户的进程
# ps
[root@localhost ~]# ps
PID TTY TIME CMD
pts/ :: bash
pts/ :: ps
显示所有用户的进程
# ps -au
[root@localhost ~]# ps -au
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 0.0 0.0 tty1 Ss+ : : /sbin/agetty --noclear tty1 linux
root 0.0 0.0 pts/ Ss : : -bash
root 0.0 0.0 pts/ R+ : : ps -au
显示所有进程和其状态
# ps aux
显示指定进程和其状态
# ps -aux | grep 服务
[root@localhost ~]# ps -aux | grep httpd
root 0.0 0.0 pts/ S+ : : grep --color=auto httpd
[root@localhost ~]#
[root@localhost ~]# ps -aux | grep vsftpd
root 0.0 0.0 pts/ S+ : : grep --color=auto vsftpd
[root@localhost ~]#
4、pidof(查看服务的pid)
# pidof nginx
[root@localhost ~]# ps aux | grep nginx
root 0.0 0.0 pts/ S+ : : grep --color=auto nginx
root 0.0 0.0 ? Ss Jun26 : nginx: master process /usr/sbin/nginx
root 0.0 0.0 ? S Jun26 : nginx: worker process
[root@localhost ~]#
[root@localhost ~]# netstat -tunlp | grep nginx
tcp 0.0.0.0: 0.0.0.0:* LISTEN /nginx
[root@localhost ~]#
[root@localhost ~]# pidof nginx
二、Windows下查看端口占用情况
1、netstat
查找所有运行的端口
C:\Users\Administrator> netstat -ano
查看被占用端口对应的PID
语法格式:
netstat -ano | findstr “端口号”
C:\Users\Administrator> netstat -ano | findstr "9558"
最后一位数字就是PID,这里是8112

2、tasklist
查看指定PID的进程
语法格式:
tasklist | findstr “PID”
C:\Users\Administrator>tasklist | findstr "8112"

3、taskkill(结束进程)
强制(/F参数)杀死pid为8112的所有进程包括子进程(/T参数)
taskkill /T /F /PID 8112
也可小写
taskkill /f /t /PID 8112
或者
taskkill /f /t /im 程序名.exe
taskkill /fi “PID eq 5052”
end
总结查看端口、进程占用情况(lsof、netstat、ps、kill)的更多相关文章
- linux查看端口进程占用情况
本文介绍linux如何查看端口被哪个进程占用的方法: 1.lsof -i:端口号 2.netstat -tunlp|grep 端口号 都可以查看指定端口被哪个进程占用的情况 [步骤一]lsof -i ...
- windows下查看端口进程占用情况
引用:http://jingyan.baidu.com/article/3c48dd34491d47e10be358b8.html 我们在启动应用的时候经常发现我们需要使用的端口被别的程序占用,但是我 ...
- Linux - 查看端口的占用情况、找出并杀死占用进程的方法
目录 1 lsof查看端口的占用情况 1.1 命令使用示例 1.2 查看某一端口的占用情况 1.3 杀死某个端口的所有进程 2 netstat查看端口占用情况 2.1 命令使用示例 2.2 查看占用某 ...
- windows上用netstat查看端口/进程占用
windows上用netstat命令查看某个端口是否占用,被哪个进程所占用 1.查看端口的占用情况,获取进程的PID 命令: netstat -ano | findstr "<端口号& ...
- linux查看端口被占用情况
Linux 查看端口占用情况可以使用 lsof 和 netstat 命令. 如果linux中没有这两个命令,则yum安装一下 yum install -y lsof yum install -y ne ...
- win7系统下查看端口的占用情况以及如何删除端口进程
经常在本地测试开发使用tomcat的时候容易报端口占用的情况,比如我要查看8080端口的使用情况 1.按如下操作,输入 cmd 回车 2.在doc窗口中输入命令 netstat -ano | f ...
- Linux 查看端口被占用情况
今天发现服务器上Tomcat 8080端口起不来,老提示端口已经被占用. 使用命令: ps -aux | grep tomcat 发现并没有8080端口的Tomcat进程. 使用命令:netstat ...
- windows查看端口被占用情况
首先,使用cmd命令打开CMD命令窗口 使用下面的命令来查看某端口被占用的情况,以8035为例: netstat -ano|findstr " 结果如下图: 最后一列的6532为PID号,根 ...
- linux下查看端口的占用情况
前提:首先你必须知道,端口不是独立存在的,它是依附于进程的.某个进程开启,那么它对应的端口就开启了,进程关闭,则该端口也就关闭了.下次若某个进程再次开启,则相应的端口也再次开启.而不要纯粹的理解为关闭 ...
- 使用netstat命令查看端口的使用情况
Windows如何查看端口占用情况操作步骤如下: 开始--运行--cmd 进入命令提示符,输入netstat -ano 即可看到所有连接的PID 之后在任务管理器中找到这个PID所对应的程序如果任务管 ...
随机推荐
- 欧拉函数 已经优化到o(n)
欧拉函数 ψ(x)=x*(1-1/pi) pi为x的质数因子 特殊性质(图片内容就是图片后面的文字) 欧拉函数是积性函数——若m,n互质, ψ(m*n)=ψ(m)*ψ(n): 当n为奇数时, ψ ...
- 如何查看你的VPS是什么虚拟化架构?
使用virt-what即可了 CentOS安装 virt-what yum install virt-what Debian/ubuntu 安装 virt-what apt-get install v ...
- python实现单链表的翻转
#!/usr/bin/env python #coding = utf-8 class Node: def __init__(self,data=None,next = None): ...
- linux 变量定义
本地变量:用户自定义的变量. 环境变量:用于所有用户变量,用于用户进程前,必须用export命令导出. 位置变量:$0(脚本名),$1-$9:脚本参数. 特定变量:脚本运行时的一些相关信息. $# 传 ...
- pycharm 的操作1
- Using C++ new() placement in embedded system
For new(), there are three definition in C++11, which are listed below. throwing (1) void* operator ...
- laya的UI编辑器
//加载一个图集 Laya.loader.load("res/atlas/comp.json",Handler.create(this,this.onLoaderComp), Ha ...
- Day36 数据库的操作
视图操作: 1.左连接查询 select * from person left join dept on person.dept_id = dept.did 2. 右连接 3. 内连接 inner ...
- 手动部署etcd-2018-0731
手动部署很简单,这里花了10分钟搞定 部署etcd 3台机器 etcd:由于 raft 算法的特性,集群的节点数必须是奇数 [root@linux-node1 ~]# cat /etc/hosts 1 ...
- 自动化部署--shell脚本--3
登录gitlab第一次登录gitlab,需要为root用户修改密码,root用户也是gitlab的超级管理员.http://192.168.58.11设置密码是gitlab 密码不够长,重新设置下,设 ...