精华内容
下载资源
问答
  • Mac通过端口进程
    2019-09-27 21:07:13
    sudo lsof -i tcp:8080

     

    转载于:https://www.cnblogs.com/gao88/p/6805991.html

    更多相关内容
  • 主要介绍了Python根据服务获取端口号,文中给大家提到了linux查看端口开启端口的方法,需要的朋友可以参考下
  • 查看某个端口被哪个程序占用 liaowenongdeair:~ root# sudo lsof -i:16308 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME SunloginC 65 root 43u IPv4 0x98aa2bc23f82d07 0t0 TCP localhost:16308 (LISTEN) ...

    使用命令 lsof 查看某个端口的使用情况

    [~]$ sudo lsof -P -i tcp:8080
    COMMAND  PID         USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME
    java    3933 liaowenxiong   50u  IPv6 0x72b25e6efd433f4b      0t0  TCP *:8080 (LISTEN)
    
    [~]$ sudo lsof -P -i:8080 # 
    COMMAND  PID         USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME
    java    3933 liaowenxiong   50u  IPv6 0x72b25e6efd433f4b      0t0  TCP *:8080 (LISTEN)
    

    选项说明:
    sudo 表示以 root 的权限执行
    -i 表示列出符合条件的且与网络相关的进程
    -P 表示不解析端口号,直接显示端口号,而不是显示端口名称

    字段说明:

    字段名称说明
    COMMAND使用端口的进程的名称,默认以 9 个字符长度显示的命令名称。可使用 +c 参数指定显示的宽度,若 +c 后跟的参数为零,则显示命令的全名。这个 +c 参数好像无效
    PID进程标识符
    PPID父进程标识符,父进程的IP号,默认不显示,当使用 -R 参数可打开。
    USER进程所有者,命令的执行 UID 或系统中登陆的用户名称。默认显示为用户名,当使用 -l 参数时,可显示 UID。
    PGID进程所属组标识符,进程组的ID 编号,默认也不会显示,当使用 -g 参数时可打开。
    FDFile Descriptor Number,文件描述符,应用程序通过文件描述符识别文件,例如:cwd、txt 等
    TYPE文件类型,例如: DIR、REG 等
    DEVICE指定磁盘的名称,以逗号分隔设备编号,使用character special、block special表示的设备号
    SIZE文件的大小,如果不能用大小表示的,会留空。使用-s参数控制。
    NODE索引节点(文件在磁盘上的标识),本地文件的node码,或者协议,如TCP等
    NAME打开文件的确切名称,挂载点和文件的全路径(链接会被解析为实际路径),或者连接双方的地址和端口、状态等
    LISTEN代表该进程正处于监听状态,即该进程处于活跃中

    关于命令 lsof 的用法说明,请点击查看文章《Linux 命令之 lsof – 列出当前系统已打开的文件列表

    使用命令 netstat 查看某个端口的使用情况

    [~]$ netstat -nat | grep 8080
    Proto Recv-Q  Send-Q Local Address         Foreign Address         State
    tcp46      0      0  *.8080                 *.*                    LISTEN 
    
    [~]$ netstat -anp tcp | grep 8080
    tcp46      0      0  *.8080                 *.*                    LISTEN   
    
    [~]$ netstat -AaLlnW                
    Current listen queue sizes (qlen/incqlen/maxqlen)
    Socket           Flowhash Listen         Local Address                          
    72b25e6ee785488b        0 0/0/128        *.56530                                       
    72b25e6ef1269023        0 0/0/128        *.56530                                       
    72b25e6ee7852d0b        0 0/0/1          127.0.0.1.8005                                
    72b25e6efd433f4b        0 0/0/100        *.8080                                                                                   
    

    选项说明:

    -a 显示所有连线中的 Socket 的状态
    -n 直接使用 ip 地址,而不通过域名服务器
    -t 显示 TCP 传输协议的连线状况
    -p 显示正在使用 Socket 的程序识别码和程序名称
    -A 默认显示时,显示与套接字关联的任何协议控制块的地址和流散列;用于调试。
    -L 显示各种侦听队列的大小。第一个计数显示不可接受的连接数。第二个计数显示不可接受的不完整连接的数量。第三个计数是排队连接的最大数量。
    -l 打印完整的IPv6地址。
    -n 将网络地址显示为数字(通常netstat解释地址并尝试以符号方式显示它们)。此选项可用于任何显示格式。
    -W 在某些显示中,避免截断地址,即使这会导致某些字段溢出。

    列说明:

    Proto 连接使用的协议
    Recv-QSend-Q 指接收队列和发送队列,这些数字一般都应该是 0。如果不是则表示软件包正在队列中堆积。这种情况只能在非常少的情况见到。
    Local Address 本地机器名和本地打开并用于连接的端口
    Foreign Address 远程机器名和端口
    State 显示套接口当前的状态。

    状态说明
    LISTEN侦听来自远方的TCP端口的连接请求
    SYN-SENT再发送连接请求后等待匹配的连接请求(如果有大量这样的状态包,检查是否中招了)
    SYN-RECEIVED再收到和发送一个连接请求后等待对方对连接请求的确认(如有大量此状态,估计被flood攻击了)
    ESTABLISHED代表一个打开的连接
    FIN-WAIT-1等待远程TCP连接中断请求,或先前的连接中断请求的确认
    FIN-WAIT-2从远程TCP等待连接中断请求
    CLOSE-WAIT等待从本地用户发来的连接中断请求
    CLOSING等待远程TCP对连接中断的确认
    LAST-ACK等待原来的发向远程TCP的连接中断请求的确认(不是什么好东西,此项出现,检查是否被攻击)
    TIME-WAIT等待足够的时间以确保远程TCP接收到连接中断请求的确认
    CLOSED没有任何连接状态

    使用命令 ps 查看指定进程的信息

    (一)命令:ps auwx | grep sshd

    查看 sshd 相关的进程:

    liaowenongdeair:etc root# ps auwx|grep sshd
    root              1987   1.0  0.0  4285816    724 s000  S+    2:37下午   0:00.00 grep sshd
    
    liaowenongdeair:etc root# ps auwx|grep ssh
    root              2158   0.0  0.0  4259000    228 s000  R+    3:30下午   0:00.00 grep ssh
    root              1982   0.0  0.0  4280264    192   ??  Ss    2:35下午   0:00.00 ssh-agent
    liaowenxiong       934   0.0  0.0  4289736   1336   ??  S     8:49上午   0:00.04 /usr/bin/ssh-agent -l
    

    从结果来看,根本查找不到 sshd 进程。

    命令说明:

    1. a 显示现行终端机下的所有程序,包括其他用户的程序
    2. u 以用户为主的格式来显示程序状况
    3. w 采用宽阔的格式来显示程序状况
    4. x 显示所有程序,不以终端机来区分

    结果说明:
    第 1 列:进程所属用户,列名:USER,-- root
    第 2 列:进程号,列名:PID,-- 1987
    第 3 列:使用掉的 CPU 资源百分比,列名:%CPU,-- 1.0
    第 4 列:所占用的物理内存百分比,列名:%MEM,-- 0.0
    第 5 列:使用掉的虚拟内存量,列名:VSZ,-- 4285816
    第 6 列:固定占用的内存量,列名:RSS,-- 724
    第 7 列:登陆者的终端机位置,列名:TTY,-- s000
    第 8 列:进程目前的状态,列名:STAT,-- S+,后面的加号 + 说明进程是“在前台进程组”,也就是进程可以使用键盘输出
    第 9 列:进程被触发启动的时间,列名:START,-- 2:37下午
    第 10 列:进程实际使用 CPU 运作的时间,列名:TIME,-- 0:00.00
    第 11 列:该进程实际的命令,列名:COMMAND,-- grep sshd

    liaowenxiongdeMacBook-Air:~ liaowenxiong$ ps -ef | grep ssh
      501   934     1   0 六08上午 ??         0:00.05 /usr/bin/ssh-agent -l
        0  1982     1   0 六02下午 ??         0:00.00 ssh-agent
      501 22930 22923   0 四03下午 ttys000    0:01.99 ssh root@47.114.59.224
      501 27379 27219   0  5:47下午 ttys001    0:00.00 grep ssh
    

    (二)命令:ps -ef | grep ssh

    查看 ssh 相关的进程:

    liaowenongdeair:etc root# ps -ef|grep ssh
      501   934     1   0  8:49上午 ??         0:00.04 /usr/bin/ssh-agent -l
        0  1982     1   0  2:35下午 ??         0:00.00 ssh-agent
    

    命令说明:

    1. -e 显示所有进程
    2. -f 显示 uid,ppip,cstime 栏位

    结果说明:
    第 1 列:进程所属用户的 ID,列名:UID
    第 2 列:进程 ID,列名:PID
    第 3 列:父进程的 ID,列名:PPID
    第 4 列:CPU 资源使用百分比,列名:C
    第 5 列:进程被触发启动的时间,列名:STIME
    第 6 列:启动进程的终端机位置,列名:TTY,? 表示与终端机无关
    第 7 列:实际使用 CPU 运作的时间,单位秒,列明:TIME
    第 8 列:进程的命令,列名:COMMAND

    (三)命令:ps -Al | grep ssh

    查看与 ssh 相关的进程的详细信息:

    liaowenongdeair:bin root# ps -Al | grep ssh
      501   934     1     4144   0  20  0  4289736    948 -      S                   0 ??         0:00.04 /usr/bin/ssh-agent -l
        0  1982     1       44   0  31  0  4280264    160 -      Ss                  0 ??         0:00.00 ssh-agent
        0 15372  1638     4006   0  31  0  4268408    684 -      S+                  0 ttys000    0:00.00 grep ssh
      501  9961  6327     4006   0  31  0  4298388   1904 -      S+                  0 ttys001    0:02.80 ssh root@47.114.59.224
    

    说明:

    1. -l 采用详细的格式来显示程序状况
    2. -A 显示所有程序,和选项 -e 相同

    预知更多关于命令 ps 的使用介绍,请点击查看文章《Linux 命令之 ps – 显示进程状态

    疑问:在 MacOS 下使用命令 ps,根本无法得知进程是否启动,因为看不到相关进程的信息。奇怪!!!

    使用命令 top 实时显示进程状态

    使用命令 top 可以查看所有进程的实时状态,关于命令 top 的用法说明,请点击查看文章《Linux 命令之 top 命令-实时显示进程动态

    关于排序:

    先输入 o,然后输入 cpu 则按 cpu 使用量排序,输入 rsize 则按内存使用量排序。

    使用命令 kill 杀掉进程

    liaowenxiongdeMacBook-Air:~ liaowenxiong$ sudo kill -9 PID
    

    说明:-9 表示强制杀掉进程

    关于命令 kill 的用法说明,请点击查看文章《Linux 命令之 kill – 杀死进程

    启动/停止/重启进程

    请查看文章《MacOS 关于启动/停止/重启进程的命令

    展开全文
  • ##根据端口获得进程号 lsof -i :$port | grep -i LISTEN | awk '{print $2}' # ##组合获得该进程的执行命令 lsof -i :$port | grep -i LISTEN | awk '{print $2}' | xargs -I {} ps -o command -p {} | tail -n +2 #...
    #!/bin/bash
    
    #use sh kill.sh 8080
    
    echo "$0"
    port="$1"
    echo $port
    
    ##根据端口获得进程号
    lsof -i :$port | grep -i LISTEN | awk '{print $2}'
    #
    ##组合获得该进程的执行命令
    lsof -i :$port | grep -i LISTEN | awk '{print $2}' | xargs -I {} ps -o command -p {} | tail -n +2
    #
    ##管道给kill掉该进程
    lsof -i :$port | grep -i LISTEN | awk '{print $2}' | xargs -I {} kill -15 {}
    

     

    展开全文
  • mac根据端口杀死进程的shell脚本 #!/bin/bash #使用demo ./killbyport.sh 7771 根据端口杀死进程 if [ -z $1 ]; then echo "you must input a port" exit 0 fi PID=$(lsof -i | grep ":$1" | awk '{print $2}' | ...

    Mac系统根据端口杀死进程的shell脚本

    第一种方式

    #!/bin/bash
    #使用demo ./killbyport.sh 7771 根据端口杀死进程
    if [ -z $1 ]; then
            echo "you must input a port"
            exit 0
    fi
    
    PID=$(lsof -i | grep ":$1" | awk '{print $2}' | awk -F '[ / ]' '{print $1}')
    
    if [ $? == 0 ]; then
            echo "process id is:${PID}"
    else
            echo "process $1 no exit"
            exit 0
    fi
    
    kill -9 ${PID}
    
    if [ $? == 0 ]; then
            echo "kill $1 success"
    else
            echo "kill $1 fail"
    fi
    
    

    参考此文所写

    第二种方式,这个速度更快一点

    平常需要杀死本地的一些Java进程程序根据运行端口

    #!/bin/bash
    kill -9 `lsof -t -i:$1`
    
    

    第二种方式的参考链接

    把脚本可以全局任何路径使用

    #创建一个存放所有全局可用脚本路径
    mkdir ~t01MacScript/globalScriptPath
    #把执行脚本放进行
    #编辑~/.bash_profile,加入路径配置
    vi ~/.bash_profile
    export PATH=$PATH:~/01MacScript/globalScriptPath
    #激活配置
    source ~/.bash_profile
    
    展开全文
  • lsof -i tcp:8081 查看进程pid命令 kill -9 pid 杀掉进程
  • sudo lsof -i :8080   转载于:https://www.cnblogs.com/taojintianxia/p/6548948.html
  • 查找端口号: sudo lsof -i :6379(端口号) 根据PID 关闭进程 sudo kill -9 51799
  • 为什么80%的码农都做不了架构师?>>>   运行: lsof -n -i4TCP:8081 杀掉进程: kill -9 <PID> 转载于:https://my.oschina.net/liseor/blog/775336
  • 记录一些mac下的常用命令: 1、查看进程号 ps -ef | grep 进程名 2、查看端口被哪个进程监听 sudo lsof -i :端口 3、查看进程监听的端口 sudo lsof -nP -p 进程号 | grep LISTEN sudo lsof -nP | grep LISTEN...
  • Eclipse在Run on Server时,Tomcat是开启的,但是报错,显示8080、8005和8009端口被占用终端输入查看所有开启的端口sudo lsof -i -P | grep -i "listen"出现如下httpd 79 root 4u IPv6 0xbc257c1a68e3d681 0t0 TCP *...
  • php实现设计模式之 工厂方法模式MAC地址泛洪攻击测试测试环境:kali系统(2个kali分别作攻击人和目标用户)win7系统(主机) 1.步配置FTP设置用户名密码 2.在攻击kali端测试网络的连通性 3.测试tpf是否正常 开始泛洪 4....
  • 1、查询端口 lsof -i :端口 2、杀掉端口 kill -9 进程ID
  • lsof -i : (端口号) //比如说: lsof -i :8081 查看到端口号上的进程获取进程的pid,然后杀死进程即可 kill -9 (pid) 若有多个进程,则多次执行kill -9 即可
  • mac 终端查看端口命令

    2019-10-03 15:59:00
    查看 端口所在线程 lsof -i:4700 $ lsof -i:4700 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME node 12159 yyyyyy 23u IPv4 0x76b4f5051c4983f3 0t0 TCP *:netxms-agen...
  • 如何获取MAC进程

    2019-05-07 16:54:00
    如何获取MAC进程数 参考链接: https://www.cnblogs.com/watchdatalearn2012620/p/3182477.html https://segmentfault.com/q/1010000009396800 NSProcessInfo可以获得当前进程的信息。获得所有活动进程...
  • python socketserver监听多端口进程

    千次阅读 2021-02-03 18:50:16
    进程监听多端口# 多线程socket# 程序监听两个端口端口逻辑相同其中一个端口放在子进程下# 每次请求会在产生一个进程处理请求import SocketServerfrom multiprocessing import Processclass MyServer...
  • 1、Linux系统查询方法 第一种方法:借助netstat命令 # 参数解释 # -l 只展示监听的socket ...# -p 显示进程名称 netstat -lntup | grep 端口号 第二种方法:借助lsof命令 lsof -i :端口号 ...
  • 释放端口号 import sys #获取输入参数 import os #使用命令行 port=sys.argv[1] r = os.popen("netstat -ano | findstr "+port) text = r.read() arr=text.split("\n") print("进程个数为:",len(arr)-1) for text0 ...
  • 查看程序PID号# 在不知程序端口号的情况下: 这样搜索好像会搜索出另外的同名线程,我也不是很清楚【ps -axu 本机名|grep 程序名】【ps -axu ShuChan|grep mysql】# 我的本机名是 ShuChan,要查找的程序是mysql,有的...
  • linux 查找进程id端口占用和杀死进程ps 命令用于查看当前正在运行的进程辅助上grep 用于搜索匹配ps -ef | grep javaps ax : 显示当前系统进程的列表ps aux : 显示当前系统进程详细列表以及进程用户-e 显示所有进程,...
  • 如何查看系统的端口进程

    千次阅读 2018-11-04 23:27:43
    做后台服务的过程中我们总是会碰到系统端口被占用的情况,但是又不知道是哪个进程占用了该端口,这种情况让人非常烦躁。其实如果熟悉netstat命令的话,这个就完全不是问题了。然而,netstat命令在Linux,Windows和...
  • 我尝试使用tomcat /bin目录中的./shutdown.... 我首先想要在特定端口(8080)上运行进程列表,以便选择要杀死的进程。shell脚本可能重复以杀死侦听端口3000的进程?此fuser 8080/tcp将打印您在该端口上绑定的进程的PI...
  • 一:nodejs进程进化及多进程架构原理 二:node中child_process模块实现多进程 三:父子进程间如何通信? 四:理解cluster集群 回到顶部 一:nodejs进程进化及多进程架构原理 NodeJS是基于chrome浏览器的V8引擎...
  • 获取进程打开的文件句柄数

    千次阅读 2015-06-29 20:09:39
    今天,碰到一个问题,如何获取进程打开的文件句柄数?搜素发现,一般需要调用命令lsof,然后用grep过滤出指定进程的结果,然后统计一下。完整的命令是: lsof -n|awk '{print $2}'|grep -e pid1 -e pid2|uniq -c ...
  • Mac常用查看进程的命令

    千次阅读 2019-09-16 03:54:52
    MAC OSX下查看某个端口被哪个程序占用及杀进程方法 sudo lsof -i :9000 该命令在Linux中同样是有的,详情可以查看帅哥笔记. 查看瞬时进程ps 一般使用 ps -ef ps aux ps -eo 自定义组建查看结果 例如: ps -eo 在...
  • 【导语】:一款开源的 Mac应用程序,方便查看系统正在运行的所有进程,以及显示哪些应用程序正在使用哪些文件。 简介 Sloth 是一款本地 Mac 应用程序,能显示系统中所有正在运行的进程所使用的文件、目录、套接字、...
  • Linux 查看 80 端口的占用情况

    千次阅读 2021-05-11 12:16:37
    lsof -i:端口号eg:lsof -i:80lsof -i:21[root@localhost ~]# lsof -i:COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAMEhttpd root 3u IPv4 0t0 TCP *:http (LISTEN)httpd nagios ...
  • 如果eclipse突然崩溃了,或者是非正常退出了,会导致之前的Tomcat没有正常关闭,端口号被占用。会出现以下的问题:  Several ports (8005, 8080, 8009) required by Tomcat v7.0 Server at localhost are already ...
  • 在Windows" wmic进程中,正在运行的进程的processid =" pid""获取命令行"为我工作。该 罪魁祸首是webhuddle jboss soft的wrapper.exe进程。 如果没有其他进程正在使用端口8080,尽管eclipse显示在eclipse中启动...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 35,756
精华内容 14,302
关键字:

mac 获取进程的端口