zoukankan      html  css  js  c++  java
  • netstat命令怎么查看端口是否占用

    转自:http://www.ahlinux.com/start/cmd/527.html

    netstat命令是一个监控TCP IP网络的非常有用的工具,它可以显示路由表、实际的网络连接以及每一个网络接口设备的状态信息,这里我只用到其
    netstat命令是一个监控TCP/IP网络的非常有用的工具,它可以显示路由表、实际的网络连接以及每一个网络接口设备的状态信息,这里我只用到其中的部分功能.
    netstat 的常用参数: - t、- u、- w和- x分别表示TCP、UDP、RAW和UNIX套接字连接。-a标记,还会显示出等待连接(也就是说处于监听模式)的套接字。
    -l 显示正在被监听(listen)的端口, -n表示直接显示端口数字而不是通过察看/etc/service来转换为端口名,-p选项表示列出监听的程序。


    有关netstat命令的详细用法,可以参考:


    windows 端口被占用问题 netstat命令查看端口占用 Linux下netstat命令实例 linux命令实例教程之netstat命令 Linux netstat命令用法详解 netstat与awk命令统计网络连接数的方法 netstat 查看电脑打开的端口 使用netstat找到占用端口的进程
    1)代码示例:
    netstat -tl
    查看当前tcp监听端口
    Active Internet connections (only servers)
    Proto Recv-Q Send-Q Local Address           Foreign Address         State     
    tcp        0      0 *:rrac                  *:*                     LISTEN     
    tcp        0      0 *:34006                 *:*                     LISTEN     
    ......
    2)代码示例:
    netstat -tlp
    查看当前tcp监听端口,需要显示监听的程序名,当不清楚mysql的监听端口时比较好用。
    Active Internet connections (only servers)
    Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name  
    tcp        0      0 *:rrac                  *:*                     LISTEN      -                         
    tcp        0      0 *:34006                 *:*                     LISTEN      23425/mysqld  
    ......
     
    3)代码示例:
    netstat -tl | grep 34006
    只查看mysql的监听端口,当前启动的mysql端口为34006,明确知道mysql监听端口时使用。


    4)代码示例:
    netstat -ta | grep 34006
    tcp        0      0 *:34006                 *:*                     LISTEN     
    tcp        0      0 linux.local:34006       linux.local:41485       ESTABLISHED
    tcp        0      0 linux.local:34006       linux.local:41486       ESTABLISHED
    ...
    tcp        0      0 10.3.2.35:41488         10.3.2.35:34006         ESTABLISHED
    tcp        0      0 10.3.2.35:41489         10.3.2.35:34006         ESTABLISHED
    tcp        0      0 10.3.2.35:41490         10.3.2.35:34006         ESTABLISHED
    由于数据库和运用程序都放在同一台机器了,因此这里连接被显示了两次。
    可以使用-p参数来显示PID,然后grep PID。


    5)代码示例:
    netstat -tap | grep 34006 | grep 23425
    23425是当前mysql的PID
    tcp        0      0 *:34006                 *:*                     LISTEN      23425/mysqld       
    tcp        0      0 linux.local:34006       linux.local:41510       ESTABLISHED 23425/mysqld       
    tcp        0      0 linux.local:34006       linux.local:41511       ESTABLISHED 23425/mysqld       
    tcp        0      0 linux.local:34006       linux.local:41516       ESTABLISHED 23425/mysqld 
    打开终端,执行如下命令,查看各进程占用端口情况:

    代码示例:
    # ps -ef|wc -l    //查看后台运行的进程总数
    # ps -fu csvn    //查看csvn进程

    # netstat -lntp  //查看开启了哪些端口
    # netstat -r      //本选项可以显示关于路由表的信息
    # netstat -a     //本选项显示一个所有的有效连接信息列表
    # netstat -an|grep 8080
    # netstat -na|grep -i listen //可以看到目前系统侦听的端口号
    # netstat -antup    //查看已建立的连接进程,所占用的端口。
    netstat -anp|grep  1487
    lsof -i:1487


    查看哪些进程打开了指定端口1487

    关闭端口实际上是关闭其对应的服务,比如80端口是HTTPD  关闭80端口可以通过关闭httpd服务来实现
    每个端口都有一个守护进程,kill掉这个守护进程就可以了
    WINDOWS下用法:
    目标:在Windows环境下,用netstat命令查看某个端口号是否占用,为哪个进程所占用.
    操作:操作分为两步:(1)查看该端口被那个PID所占用;方法一:有针对性的查看端口,使用命令
    Netstat –ano|findstr “<端口号>”,如图,最后一列为PID。图中的端口号为1068,所对应的PID为3840。

  • 相关阅读:
    Verilog手绘FVH信号
    Verilog编码规范与时序收敛
    关于DDS的基础知识
    阅读ug949-vivado-design-methodology笔记
    在windows系统上使用pip命令安装python的第三方库
    pandas第一课
    视频外同步信号研究---fvh
    FPGA调试技巧
    关于FIFO异步复位的问题
    搭建一个microblaze的最小系统
  • 原文地址:https://www.cnblogs.com/zgq123456/p/9885201.html
Copyright © 2011-2022 走看看