Linux ps sort head 命令的使用以及实操查询cpu内存占用大的进程

ps命令说明

用法:
ps [选项]

基础选项:
-A, -e 显示所有的进程
-a 显示带tty, 除了主会话
a 显示带tty, 包含其他用户
-d 显示所有除了主会话
-N, --deselect 取消项
r 只显示运行进程
T 显示在终端的所有进程
x 进程排除控制 ttys

列表选区:
-C 命令名称
-G, --Group 真实组ID和名字
-g, --group 会话或者生效的组名称
-p, p, --pid 进程ID
–ppid 父进程ID
-q, q, --quick-pid
进程ID (快速模式)
-s, --sid 会话ID
-t, t, --tty 终端
-u, U, --user 生效的用户ID或名字
-U, --User 真实用户ID或名字

选区选项参数可以使用以下方式:
用逗号分开 ‘-u root,nobody’
用空格分开 ‘-p 123 4567’

输出格式:
-F 特别全的
-f 满格式包括命令
f, --forest ascii 技术进程树
-H 显示进程层次
-j 工作格式
j BSD工作控制格式
-l 长格式
l BSD长格式
-M, Z 增加安全数据 (SELinux)
-O 预加载默认列
O 和 -O类似,带有BSD风格
-o, o, --format
用户定义格式
s 信号格式
u 用户导向格式
v 虚拟内存格式
X 注册格式
-y 不显示标记, 显示rss vs. addr (使用 -l)
–context 展示安全内容 (SELinux)
–headers 重复头行, 每一页
–no-headers 不显示头
–cols, --columns, --width
设置屏幕宽
–rows, --lines
设置屏幕高

显示线程:
H 仿进程
-L 可能包含 LWP 和 NLWP 列
-m, m 在进程后面
-T 可能包含 SPID 列

其他选项:
-c 显示排程类 配合-l 选项使用
c 显示正确的命令名称
e 在命令后面显示环境
k, --sort 指定排序命令 例如: [+|-]key[,[+|-]key[,…]]
L 显示格式指示
n 展示数据uid和wchan
S, --cumulative 包含中止的子进程数据
-y 不显示标记,显示 rss (使用 -l)
-V, V, --version 显示版本信息然后退出
-w, w 无限制输出宽度

sort命令说明

用法: sort [选项]… [文件]…
or: sort [选项]… --files0-from=F

排序选项:

-b, --ignore-leading-blanks 忽略前面的空格
-d, --dictionary-order 处理英文字母、数字及空格字符外,忽略其他的字符。
-f, --ignore-case 将小写字母视为大写字母
-g, --general-numeric-sort 常用数字排序
-i, --ignore-nonprinting 除了040至176之间的ASCII字符外,忽略其他的字符
-M, --month-sort 比较月份< ‘JAN’ < … < ‘DEC’
-h, --human-numeric-sort 人可读数字排序 (e.g., 2K 1G)
-n, --numeric-sort 通过数字排序
-R, --random-sort 随机标记key
–random-source=FILE 从 FILE中获取随机字节
-r, --reverse 反向排序比较结果
–sort=WORD 排序根据下面的单词:
general-numeric -g, human-numeric -h, month -M,
numeric -n, random -R, version -V
-V, --version-sort 文本自然排序

其他选项:
–batch-size=NMERGE 马上合并 NMERGE输入;
可以使用更多的临时文件
-c, --check, --check=diagnose-first 检查排序的输入; 不排序
-C, --check=quiet, --check=silent 像-c, 但是不报告第一个错误行
–compress-program=PROG 使用PROG进行压缩;
解压用 PROG -d
–debug 注释该行部分内容去排序,
警告标准错误行输出
–files0-from=F 从终端读取指定文件 F;
假如 F 标准输入处读取名字
-k, --key=KEYDEF 排序通过一个关键词; KEYDEF 给出位置或者类型
-m, --merge 合并已经排序的文件; 不排序
-o, --output=FILE 把结果写入到 FILE 替代标准输出
-s, --stable 稳定排序 禁用最后重排比较
-S, --buffer-size=SIZE 主内存缓存大小
-t, --field-separator=SEP 用SEP替代 非空到空的转换
-T, --temporary-directory=DIR 用 DIR 临时区, 不是$TMPDIR 或者 /tmp;
多选项指定多目录
–parallel=N 改变排序的数字 并行运行到 N
-u, --unique with -c, 检查严格排序;
without -c,输出第一个相同的
-z, --zero-terminated 行分隔符是NUL, 不新启一行
–help 展示帮助信息并退出
–version 输出版本信息并退出

head命令说明

用法: head [选项]… [文件]…

-c, --bytes=[-]NUM 打印每一个文件的NUM 字节内容;
带 ‘-’, 打印全部除了每个文件的最后NUM字节
-n, --lines=[-]NUM 打印前面NUM 行 代替前10;
使用’-’,打印全部除了每个文件的最后NUM行
-q, --quiet, --silent 不打印头部给文件名称
-v, --verbose 总是打印头部交给文件名称
-z, --zero-terminated 行分隔符为NUL, 不新起一行

实操

查找cpu使用率最高的前5个进程

[root@127.0.0.1 ~]# ps -aux|sort -k3nr|head -5
root     31865  0.5  1.1 146172 20452 ?        S<sl Apr20 432:13 /usr/local/aegis/aegis_client/aegis_10_79/AliYunDun
root     13693  0.1  0.2  57264  5028 ?        Ssl  May21  61:37 /usr/sbin/aliyun-service
chrony     703  0.0  0.1 119428  3436 ?        S    Mar11   0:14 /usr/sbin/chronyd
dbus       689  0.0  0.3  73652  5724 ?        Ss   Mar11   0:15 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
libstor+   694  0.0  0.1  10660  1932 ?        Ss   Mar11   0:08 /usr/bin/lsmd -d

查找内存使用最高的前5个进程

[root@iZbp177h3fppi8u6stoarsZ ~]# ps -aux|sort -k4nr|head -5
systemd+ 23402  0.0 11.1 1136320 200004 pts/0  Ssl+ 10:37   0:08 mysqld
root     23104  0.0  5.6 862684 101840 ?       Ssl  10:32   0:05 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
root     23103  0.0  2.6 768712 47132 ?        Ssl  10:32   0:24 /usr/bin/containerd
root       528  0.0  2.1 127568 38708 ?        Ss   Mar11   0:23 /usr/lib/systemd/systemd-journald
root       767  0.0  1.9 212452 35076 ?        S    Mar11   0:52 /usr/libexec/sssd/sssd_nss --uid 0 --gid 0 --logger=files

猜你喜欢

转载自blog.csdn.net/gotowest123/article/details/106835948
今日推荐