Linux自学笔记 | 12 常用命令 - 进程管理类
01 ps
使用介绍
- 释义:process status,查看当前系统进程状态。
- 命令:
ps [参数]
a
列出带终端的所有进程x
列出当前用户所有进程,包括没有终端的进程u
友好显示风格-e
列出所有进程-u
列出某个用户关联的所有进程(后接用户名)-f
显示完整格式的进程列表
- 示例
ps aux
ps -ef
ps aux结果说明
列名 | 含义 |
---|
USER | 该进程是哪个用户产生的 |
PID | 进程的PID号 |
%CPU | 该进程占用CPU资源百分比 |
%MEM | 该进程占用物理内存百分比 |
VSZ | 该进程占用虚拟内存的大小(KB) |
RSS | 该进程占用实际物理内存的大小(KB) |
TTY | 该进程在哪个终端中运行(CentOS中tty1表示图形化界面,tty2-tty6是本地字符界面,pts/0-255表示虚拟终端) |
STAT | 进程状态:R 运行状态;S 睡眠状态;T 暂停状态;Z 僵尸状态;s 包含子进程;l 多线程;+ 前台显示;< 高优先级;N 低优先级 |
START | 该进程启动时间 |
TIME | 该进程占用CPU的运算时间(不是系统时间) |
COMMAND | 产生该进程的命令 |
ps -ef结果说明
列名 | 含义 |
---|
UID | 该进程是哪个用户产生的 |
PID | 进程的PID号 |
PPID | 该进程的父进程PID(启动该进程的进程是父进程) |
C | CPU用于计算执行优先级的因子,数值越小优先级越高 |
STIME | 该进程启动时间 |
TTY | 该进程在哪个终端中运行(CentOS中tty1表示图形化界面,tty2-tty6是本地字符界面,pts/0-255表示虚拟终端) |
TIME | 该进程占用CPU的运算时间(不是系统时间) |
CMD | 产生该进程的命令 |
配合grep查看
ps -ef | grep sshd
ps -ef | grep 3746
02 kill
- 释义:终止进程
- 命令:
kill [参数] 进程PID
or killall 进程名称
- 示例
kill -9 5102
killall firefox
03 pstree
- 释义:查看进程树
- 命令:
pstree [参数]
- 示例
yum -y install psmisc
pstree -p
pstree -u
04 top
- 释义:实时监控系统进程状态
- 命令:
top [参数]
-d
指定top命令每隔几秒更新(默认3秒)-i
不显示闲置或僵尸进程-p
指定监控进程PID
- 示例
top
top -i
top -d 5
top -p 2655
- 第一行
- 21:37:39 当前时间
- 3:34 系统启动后运行时间(3小时24分)
- 1 user 当前用户数
- load average 过去 1分钟 5分钟 15分钟 系统平均负载
- 第二行
- 102 total 当前总进程数
- 1 running 运行状态进程数
- 101 sleeping 休眠状态进程数
- 0 stopped 停止状态进程数
- 0 zombie 僵尸状态进程数
- 第三行
- 0.3 us 用户进程cpu占用时间百分比
- 0.7 sy 系统进程cpu占用时间百分比
- 0.0 ni 调整优先级后的进程cpu占用时间百分比
- 99.0 id 空闲进程cpu占用时间百分比
- 0.0 wa 等待进程cpu占用时间百分比(等待I/O操作)
- 0.0 hi 硬件中断服务请求占用时间百分比
- 0.0 si 软件中断服务请求占用时间百分比
- 0.0 st 被虚拟化设备占用时间百分比
- 第四、五行
- total 总内存(KB)
- free 空闲内存
- used 已使用内存
- buff/cache 缓存区内存
- 进程列名
- PR 进程优先级
- NI 用户指定的优先级
- VIRT 虚拟内存占用值
- RES 物理内存占用大小
- SHR 共享内存占用值大小
- S 状态(S->sleep R->run)
- TIME+ 占用CPU的总时间
- 快捷键
M
按内存使用率排序P
按CPU使用率排序N
按PID排序q
退出查看界面u
指定监控某用户进程(输入用户名)k
中止某进程(输入PID,再输入9)
05 netstat
- 释义:显示网络状态和端口占用信息
- 命令:
netstat [参数]
-a
显示所有正在监听(listen)和未监听的socket-n
不显示别名而显示数字(IP)-l
仅列出在监听的服务状态-p
显示哪个进程在调用
- 示例
netstat -anp | grep sshd
netstat -nlp | grep 3306
06 crontab
- 释义:系统定时任务
- 命令:
crontab [参数]
-e
编辑crontab定时任务-l
查询crontab定时任务-r
删除当前用户所有的crontab定时任务
- 示例
systemctl restart crond
crontab -l
crontab -e
示例 | 释义 |
---|
* * * * * | 5个位置分别代表:分 时 日 月 星期(空格分隔) |
45 22 * * * | 每天22:45执行 |
0 10 18 11 * | 每年11月18日10:00执行 |
0 17 * * 7 | 每周日17:00执行 |
0 12,14 15 * * | 每月15日12:00和14:00执行 |
40 5 * * 1-5 | 每周一到周五5:40执行 |
*/10 4 * * * | 每天凌晨4点 每隔10分钟执行一次 |
45 22 * * * echo "hello world" >> /root/hello.txt
tail -f hello.txt