linxu进程相关命令操作

浏览 79 次     时间 2021-08-26 21:57:34     作者 有勇气的牛排    标签 linux

1 ps查看

帮助:ps --help

ps

-A:显示所有进程

a:显示终端中包括其它用户的所有进程

x:显示无控制终端的进程

1.1 查看系统中的每个进程

ps -A
ps -e

1.2 查看所有运行中进程

ps aux | less

1.3 查看所有非root运行进程

ps -u root -N

1.4 查看用户charles运行的进程

ps -u charles

1.5 top命令

top命令:动态显示系统中的进程

top

1.6 显示进程的树状图

pstree

1.7 列印进程树

ps -ejh
ps axjf

1.8 获得线程信息

ps -eLf
ps axms

1.9 获取安全信息

ps -eo euser,ruser,suser,fuser,f,comm,label
ps -axZ
ps -eM

2 快照进程

2.1 将进程快照到文件中

ps -b -n1 > /tmp/process.log

2.2 将结果通过邮件发送给自己

top -b -n1 | mail -s 'Process snapshot' you@example.com

3 pgrep

pgrep能查找当前正在运行的进程并列出符合条件的进程ID。例如显示firefox的进程ID:

pgrep firefox

显示进程名为sshd、所有者为root的进程

pgrep -u root sshd

4 htop

htop是一个类似top的交互式进程查看工具,但是可以垂直和水平滚动来查看所有进程和他们的命令行。进程的相关操作(killing,renicing)不需要输入PID。

安装

apt-get install htop
yum install htop

启动

htop

linux htop进程工具

5 atop 工具

atop是一个用来查看Linux系统负载的交互式监控工具。它能展现系统层级的关键硬件资源(从性能角度)的使用情况,如CPU、内存、硬盘和网络。

它也可以根据进程层级的CPU和内存负载显示哪个进程造成了特定的负载;如果已经安装内核补丁可以显示每个进程的硬盘和网络负载。

安装

sudo apt instll atop

启动

atop

linux atop进程工具

6 结束进程

确定进程pid

ps -ef

确定火狐进程

ps -ef | grrep firefox

6.1 纯kill

注释:标准的kill命令通常都能达到目的。终止有问题的进程,并把进程的资源释放给系统。然而,如果进程启动了子进程,只杀死父进程,子进程仍在运行,因此仍消耗资源。为了防止这些所谓的“僵尸进程”,应确保在杀死父进程之前,先杀死其所有的子进程。

kill pid

6.2 kill -l

-l:有进程不能成功

kill -l pid

6.3 term信号

给父进程发送一个TERM信号,试图杀死它和它的子进程。

kill -term ppid

6.3 killall 命令

Linux killall 用于杀死一个进程,与 kill 不同的是它会杀死指定名字的所有进程。

kill 命令杀死指定进程 PID,需要配合 ps 使用,而 killall 直接对进程对名字进行操作,更加方便。

-e | --exact : 进程需要和名字完全相符

-I | --ignore-case :忽略大小写

-g | --process-group:结束进程组

-i | --interactive :结束之前询问

-l | --list :列出所有的信号名称

-q | --quite:进程没有结束时,不输出任何 信息

-r | --regexp :将进程名模式解释为扩展的正则表达式。

-s | --signal :发送指定信号

-u | --user :结束指定用户的进程

-v | --verbose:显示详细执行过程

-w | --wait:等待所有的进程都结束

-V |--version :显示版本信息

--help :显示帮助信息

结束所有的 php-fpm 进程

killall -9 php-fpm

6.4 停止和重启进程

killall -hup pid

6.5 强杀

kill -s 9 1827
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。