目录
- 1、排序sort
- 参数
- 用法
- 排序(-n)
- 从大到小 倒叙(-r)
- cpu使用占比排序(ps aux --sort -%cpu)
- 2、截取到某个字符串 cut
- 3、awk处理文本文件
- 用法:
- 打印等于 和不等于
1、排序sort
经常用于排序
参数
-u: 去除重复行
-r: 降序排列,默认是升序
-o: 将排序结果输出到文件中,类似重定向符号
-n: 以数字排序,默认按字符排序
-t; 分隔符
-k: 第N列
-b: 忽略前导空格
-R: 随机排序,每次运行的结果均不同
用法
排序(-n)
使用sort 对文件夹/etc/passwd 中的uid 进行排序(从小到大)
sort -t: -k3 -n /etc/passwd
-t: 指定分隔符
-k3 指定分割后的第几列
-n 排序
从大到小 倒叙(-r)
sort -t: -k3 -n /etc/passwd
cpu使用占比排序(ps aux --sort -%cpu)
这个命令用于查看,哪个进程使用的cpu占比比较大
查看cpu使用占比最大的 前二十个
ps aux --sort -%cpu | head -20
2、截取到某个字符串 cut
cut -d: -f3 /etc/passwd
-d: 指定分隔符
-f3 筛选第三列
3、awk处理文本文件
常用参数:
默认分割符号是 空格
-F:指定字段分隔符。
-v:定义一个变量并将其传递给awk脚本。
-f:从外部文件读取awk脚本。
NR:表示行号。
NF:表示字段数量。
BEGIN:在处理输入之前执行的操作。
END:在处理输入之后执行的操作。
以下是一个示例,假设我们有一个以逗号分隔的数据文件,其中包含学生姓名和分数,在这个示例中,我们想要计算每个学生的平均分:
用法:
awk -F ":" '{print $1}' /etc/passwd
-F ":" 指定分隔符号 为 :
'{print $1}' 打印第一列
打印等于 和不等于
#等于
awk '{if($0=="/bin/bash") print $0}' /etc/shells
#不等于
awk '{if($0!=="/bin/bash") print $0}' /etc/shells