1.查看占用端口的进程信息
netstat -aon | findstr "端口号"
这里的端口号根据实际情况填写,如 netstat -aon|findstr "8888",输出:
TCP 127.0.0.1:8888 0.0.0.0:0 LISTENING 5824
占用8888端口的进程的PID是5824
2.根据PID查看进程名
tasklist | findstr "PID"
比如tasklist | findstr "5824",输出:
javaw.exe 5824 Console 1 43,748 K
3.杀死进程
C:\Users\Administrator>taskkill /pid 5824 /f
成功: 已终止 PID 为 5824 的进程。
某些时候出现:
错误: 无法终止 PID 为 5824 的进程。
原因: 只能强行终止这个进程(带 /F 选项)。
这时候就需要使用 /f 参数。
总结:
1.可以根据进程名称杀死进程
taskkill /im "进程名",如:taskkill /im notepad.exe
2.同时杀死多个进程
taskkill /im notepad.exe /im iexplorer.exe
3.端口状态
LISTENING状态
FTP服务启动后首先处于侦听(LISTENING)状态。
ESTABLISHED状态
ESTABLISHED的意思是建立连接。表示两台机器正在通信。
CLOSE_WAIT
对方主动关闭连接或者网络异常导致连接中断,这时我方的状态会变成CLOSE_WAIT 此时我方要调用close()来使得连接正确关闭
TIME_WAIT
我方主动调用close()断开连接,收到对方确认后状态变为TIME_WAIT。TCP协议规定TIME_WAIT状态会一直持续2MSL(即两倍的分段最大生存期),以此来确保旧的连接状态不会对新连接产生影响。处于TIME_WAIT状态的连接占用的资源不会被内核释放,所以作为服务器,在可能的情况下,尽量不要主动断开连接,以减少TIME_WAIT状态造成的资源浪费。
目前有一种避免TIME_WAIT资源浪费的方法,就是关闭socket的LINGER选项。但这种做法是TCP协议不推荐使用的,在某些情况下这个操作可能会带来错误。
SYN_SENT状态
SYN_SENT状态表示请求连接,当你要访问其它的计算机的服务时首先要发个同步信号给该端口,此时状态为SYN_SENT,如果连接成功了就变为ESTABLISHED,此时SYN_SENT状态非常短暂。但如果发现SYN_SENT非常多且在向不同的机器发出,那你的机器可能中了冲击波或震荡波之类的病毒了。这类病毒为了感染别的计算机,它就要扫描别的计算机,在扫描的过程中对每个要扫描的计算机都要发出了同步请求,这也是出现许多SYN_SENT的原因。