进程命令

Posted wwchihiro

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了进程命令相关的知识,希望对你有一定的参考价值。

进程管理

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


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

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

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

[[email protected] /]# pstree
[[email protected] /]# pstree lisi
无用户名: lisi
[[email protected] /]# useradd lisi

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

 


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

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

[[email protected] /]# ps aux

[[email protected] /]# ps -elf

[[email protected] /]# ps aux | wc -l

[[email protected] /]# 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:精确匹配完整的进程名

[[email protected] /]# top -d 1

[[email protected] /]# pgrep -l log

[[email protected] /]# pgrep -lU root

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

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

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

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

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

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


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


[[email protected] /]# sleep 100 &
[[email protected] /]# sleep 200 &
[[email protected] /]# sleep 300 &
[[email protected] /]# jobs

[[email protected] /]# jobs -l

[[email protected] /]# kill 15230
[[email protected] /]# jobs -l

[[email protected] /]# killall -9 sleep
[[email protected] /]# jobs -l

[[email protected] /]# killall -9 -u lisi #踢出一个用户

以上是关于进程命令的主要内容,如果未能解决你的问题,请参考以下文章

Linux终止前台进程的命令

linux命令行怎么结束进程

如何获得一个bash子进程的命令行上的进程id

如何用CMD命令结束一个进程和打开一个程序?

1.5 常用UNIX/Linux命令 -进程控制类命令

ADB命令查看App主进程和私有进程PID小记