进程命令

进程管理

程序:静态的代码,占用磁盘空间


进程:动态的代码,占用内存、CPU
进程唯一编号:PID
父进程/子进程

• pstree — Processes Tree
– 格式:pstree [选项] [PID或用户名]

• 常用命令选项
– -a:显示完整的命令行
– -p:列出对应PID编号

[root@svr7 /]# pstree
[root@svr7 /]# pstree lisi
无用户名: lisi
[root@svr7 /]# useradd lisi

[root@svr7 /]# pstree lisi
bash───vim
[root@svr7 /]# pstree -p lisi
bash(10119)───vim(10150)
[root@svr7 /]# pstree -ap lisi
bash,10119
└─vim,10150 a.txt
[root@svr7 /]# pstree -ap 10119


• ps aux 操作
– 列出正在运行的所有进程,显示信息完整

• ps -elf 操作
– 列出正在运行的所有进程,显示信息中有PPID(父进程的PID)

[root@svr7 /]# ps aux

[root@svr7 /]# ps -elf

[root@svr7 /]# ps aux | wc -l

[root@svr7 /]# ps -elf | wc -l

进程动态排名
• top 交互式工具
– 格式:top [-d 刷新秒数] [-U 用户名]


• top 交互操作指令
– ?:查看帮助(列出可用的按键指令)
– P、M:根据 %CPU、%MEM 降序排列
– k:杀死指定的进程
– q:退出 top 程序

检索进程
• pgrep — Process Grep
– 用途:pgrep [选项]... 查询条件

• 常用命令选项
– -l:输出进程名,而不仅仅是 PID
– -U:检索指定用户的进程
– -t:检索指定终端的进程
– -x:精确匹配完整的进程名

[root@svr7 /]# top -d 1

[root@svr7 /]# pgrep -l log

[root@svr7 /]# pgrep -lU root

######################################################
进程的前后台调度

– 在命令行末尾添加“&”符号,将进程以正在运行的方式放入后台

– 在命令行按Ctrl+z,将进程以暂停的方式放入后台

• jobs 命令
– 查看后台任务列表
• fg 命令
– 将后台任务恢复到前台运行
• bg 命令
– 激活后台被挂起的任务

[root@svr7 /]# sleep 1000 & #正在运行的进程放入后台
[root@svr7 /]# jobs #查看后台都有那些进程
[root@svr7 /]# sleep 800
^Z #输入Ctrl+z暂停放入后台
[2]+ 已停止 sleep 800
[root@svr7 /]# jobs
[root@svr7 /]# bg 2 #激活后台暂停的进程
[root@svr7 /]# jobs

[root@svr7 /]# fg 1 #将后台的进程恢复到前台
sleep 1000
^C #按Ctrl+c结束进程运行
[root@svr7 /]# jobs
[root@svr7 /]# fg 2
sleep 800
^C #按Ctrl+c结束进程运行
[root@svr7 /]# jobs


杀死进程
• 干掉进程的不同方法
– Ctrl+c 组合键,中断当前命令程序
– kill [-9] PID...
– killall [-9] 进程名...
– pkill 查找条件


[root@svr7 /]# sleep 100 &
[root@svr7 /]# sleep 200 &
[root@svr7 /]# sleep 300 &
[root@svr7 /]# jobs

[root@svr7 /]# jobs -l

[root@svr7 /]# kill 15230
[root@svr7 /]# jobs -l

[root@svr7 /]# killall -9 sleep
[root@svr7 /]# jobs -l

[root@svr7 /]# killall -9 -u lisi #踢出一个用户

原文地址:https://www.cnblogs.com/wwchihiro/p/9107489.html