linux ps and kill process View

Disclaimer: This article is a blogger original article, follow the CC 4.0 BY-SA copyright agreement, reproduced, please attach the original source link and this statement.
This link: https://blog.csdn.net/wsp_1138886114/article/details/98207128

ps command to find the PID number associated with the process:

ps a  显示现行终端机下的所有程序,包括其他用户的程序。
ps -A 显示所有程序。
ps c  列出程序时,显示每个程序真正的指令名称,而不包含路径,参数或常驻服务的标示。
ps -e 此参数的效果和指定"A"参数相同。
ps e  列出程序时,显示每个程序所使用的环境变量。
ps f  用ASCII字符显示树状结构,表达程序间的相互关系。
ps -H 显示树状结构,表示程序间的相互关系。
ps -N 显示所有的程序,除了执行ps指令终端机下的程序之外。
ps s 采用程序信号的格式显示程序状况。
ps S 列出程序时,包括已中断的子程序资料。
ps -t<终端机编号> 指定终端机编号,并列出属于该终端机的程序的状况。
ps u 以用户为主的格式来显示程序状况。显示有效用户的相关进程
ps x 显示所有程序,列出比较完整的信息

查询系统所有进程数据       ps aux    
查看不与terminal有关的进程 ps ax
查看同一部分进程树状态     ps axjf

ps可以与grep组合一起查询
ps -ef | grep java 表示查看所有进程里 CMD 是 java 的进程信息等等

Query and kill the process

// 获取终端上所有用户的有关进程的所有信息
[root@localhost~]$ sudo ps -aux
USER        PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root          1  0.0  0.4 128092  4724 ?        Ss   Jun25   0:03 /usr/lib/systemd/syste
root          2  0.0  0.0      0     0 ?        S    Jun25   0:00 [kthreadd]
root          3  0.0  0.0      0     0 ?        S    Jun25   0:00 [ksoftirqd/0]
root          6  0.0  0.0      0     0 ?        S    Jun25   0:00 [kworker/u256:0]
root          7  0.0  0.0      0     0 ?        S    Jun25   0:00 [migration/0]
...
root        235  0.0  0.0      0     0 ?        S<   Jun25   0:00 [mpt/0]
root        241  0.0  0.0      0     0 ?        S    Jun25   0:00 [scsi_eh_0]
root        243  0.0  0.0      0     0 ?        S<   Jun25   0:00 [scsi_tmf_0]
root        245  0.0  0.0      0     0 ?        S    Jun25   0:00 [scsi_eh_1]
root        246  0.0  0.0      0     0 ?        S    Jun25   0:00 [kworker/u256:2]
...


// 获取某服务程序的所有进程号
[root@localhost~]$ pgrep httpd
6703
6704
6705
6706

// 杀死进程,killall通过程序名字杀死所有进程。 `pgrep {programName}`查看进程是否存在
[root@localhost~]$ 
[root@localhost~]$ killall httpd
[root@localhost~]$ pgrep httpd
[root@localhost~]$ 

[root@localhost~]$ sudo kill -9 11719  # 普通kill无法杀死,那么就发送-9信号直接强制杀死
[root@localhost~]$ kill 11735          # 普通后台运行程序可以直接kill

[root@localhost~]$ ps -aux | grep java # 查看java进程
[root@localhost~]$ ps -aux | grep pid  # 根据 pid 查看进程

//  `ps -ef | grep {programName}`查看进程是否存在
[root@localhost~]$ ps -ef | grep {programName}
[root@localhost~]$ kill -9 {PID}

View Port occupation

lsofOpen the file list the current system, often with the -i option is used for viewing a program which port is occupied

[root@bogon ~]# lsof -i:80
COMMAND  PID   USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
httpd   6701   root    4u  IPv6  64259      0t0  TCP *:http (LISTEN)
httpd   6702 apache    4u  IPv6  64259      0t0  TCP *:http (LISTEN)
httpd   6703 apache    4u  IPv6  64259      0t0  TCP *:http (LISTEN)
httpd   6704 apache    4u  IPv6  64259      0t0  TCP *:http (LISTEN)
httpd   6705 apache    4u  IPv6  64259      0t0  TCP *:http (LISTEN)
httpd   6706 apache    4u  IPv6  64259      0t0  TCP *:http (LISTEN)
[root@bogon ~]# lsof -i:22
COMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
sshd     931 root    3u  IPv4  20955      0t0  TCP *:ssh (LISTEN)
sshd     931 root    4u  IPv6  20965      0t0  TCP *:ssh (LISTEN)
sshd    3926 root    3u  IPv4  36374      0t0  TCP bogon:ssh->bogon:53436 (ESTABLISHED)
[root@bogon ~]# 

Header head

USER 用户名
UID 用户ID(User ID)
PID 进程ID(Process ID)
PPID  父进程的进程ID(Parent Process id)
SID 会话ID(Session id)
%CPU 进程的cpu占用率
%MEM 进程的内存占用率

VSZ 进程所使用的虚拟的大小(Virtual Size)
RSS 进程使用的驻留集大小或者是实际内存的大小,kbytes字节
TTY 与进程关联的终端(tty)
STAT 进程的状态:进程状态使用字符表示的(STAT的状态码)

R运行 Runnable(on run queue) 正在运行或在运行队列中等待。

s 睡眠 Sleeping  休眠中,受阻,在等待某个条件的形成或者接受到信号。
I 空闲 Idie
Z 僵死 进程已终止,但进程描述符存在,直到父进程调用wait4系统调用后释放。
D 不可中断 收到信号不唤醒和不可运行,进程必须等待直到有中断发生。
T 终止 进程收到SIGSTOP,SIGSTP,SIGTIN,SIGTOU信号后停止运行。
P 等待交换页
W 无驻留页 没有足够的记忆体分页可分配。
x 死掉的进程

《 高优先级进程         高优先序的进程
N 低优先 级进程        低优先序的进程
L 内存锁页 Lock  有记忆体分页分配并缩在记忆体内
s 进程的领导者(在它之下有子进程)
I 多进程的
+ 位于后台的进程组
START 进程启动时间和日期
TIME 进程使用的总cpu时间
COMMAND 正在执行的命令行命令
NI 优先级(Nice)
PRI 进程优先级编号(Priority)
WCHAN 进程正在睡眠的内核函数名称;该函数的名称是从/root/system.map文件中获得的。
FLAGS 与进程相关的数字标识。

Guess you like

Origin blog.csdn.net/wsp_1138886114/article/details/98207128