zoukankan      html  css  js  c++  java
  • linux 查看进程号并杀死进程

    问题描述:

    使用nohup &运行后台程序,命令如下:

    nohup python server.py &

    该命令可以保持程序后台运行(保证你的xshell断了但服务不会停)

    但是在重新启动server.py的时候,服务器会提示端口被占用

    这时需要先杀死之前的程序,再重新启动。

    步骤:

    1.查看进程号

    1)使用 lsof -i:端口号查看进程号(当知道端口号的时候),比如查看1500端口的进程号:

    lsof -i:1500

    这个PID 79297就是进程号

    2)当系统不支持lsof时,可以使用netstat

    netstat -ntlp | grep [port]

    3)当不知道端口号,但是知道程序名称时,使用ps aux查看

    ps -aux | grep server.py

    不是S+的那一列对应的就是PID。

    Sl那一列代表运行状态STAT,S表示中断?反正查了查我没懂。我理解的是S+代表你查询命令的临时进程号,而不是程序运行的进程号,一般S,Sl或者Sl+表示正在运行的程序。

    (另外,我发现使用ps aux的时候,为啥别人的USER显示名字,而我就显示515用户id?查了发现linux本身机制问题,当用户名称超过8个字符,系统会自动显示用户对应id。)

    2. 干掉他

    kill -9 PID

    其他例子:

    备注:

    1)根据PID可以查询进程名称,命令如下:

    ll /proc/PID

    这样就可以定位到该运行程序的路径

  • 相关阅读:
    luogu_1339 [USACO09OCT]热浪Heat Wave
    luogu_1341 无序字母对
    luogu_1330 封锁阳光大学
    luogu_3383 【模板】线性筛素数
    luogu_1095 守望者的逃离
    luogu_1373 小a和uim之大逃离
    查看寄存器
    Assembly oth
    非常详细的端口表汇总
    公式证明
  • 原文地址:https://www.cnblogs.com/-mrl/p/13737219.html
Copyright © 2011-2022 走看看