head
head /etc/passwd
head -n 3 /etc/passwd 查看前3行
head -c 10 /etc/passwd 查看前10个字节
tail
tail /etc/passwd
tail -1000 /etc/passwd 查看尾部1000行
综合:获取3-12行
head -12 /etc/passwd | tail -10 #先获取前12行,再从前12行中获取后10行
cut
- 取出文件指定的列
- 默认以有规律的空格或者tab建进行分割(不支持不规则的空格)
选项
-
-d
指定分隔符
-
-f
指定获取的列号
cut -d ":" -f 1,3 /etc/passwd # 按:分割,取出分割后的第1,3列
cut -d" " -f2 test.log #按空格分割,取出第2列
uniq
- 去重:先排序再去重,不排序只能去掉连续重复的
选项
-
-d
仅打印有重复的元素
-
-c
打印元素重复个数
sort
- 对文本的内容进行排序
- 默认以字符的ASCII码从小到大排序
选项
-
-n
以数值大小排序
-
-r
倒序
-
-t
指定分割字符,默认为空格
-
-k num
指定以某个字段来排序
head -50 testcases.log | cut -d " " -f4 | sort | uniq #日志文件前50行 取出第四列用户名,排序后去掉重复的用户名
head -50 testcases.log | cut -d " " -f4 | sort | uniq -c #日志文件前50行 取出第四列用户名,排序后去掉重复的用户名,查看每个user的出现的次数
wc(world count)
- 计算文本数量
选项
-
wc -l
统计行数
-
wc -w
统计单词数
-
wc -c
统计字节数
-
wc -L
统计最长行的字节数
wc -l testcases.log #打印文件的行数