1.1 cut 1.2 sort 1.3 wc 1.4 uniq 1.5 tee 1.6 tr 1.7 split 1.8 awk 1.9 sed
cut 根据条件 从命令结果中 提取 对应内容
举个栗子:截取出1.txt文件中前2行的第5个字符
准备工作:
文件: vim 1.txt
内容:
111:aaa:bbb:ccc
222:ddd:eee:fff
333:ggg:hhh
444:iii
命令 含义
cut 动作 文件 从指定文件 截取内容
参数 英文 含义
-c characters 按字符选取内容
head -2 1.txt | cut -c 5
栗子2:截取出1.txt文件中前2行以”:”进行分割的第1,2段内容
参数 英文 含义
-d ‘分隔符’ delimiter 指定分隔符
-f n1,n2 fields 分割以后显示第几段内容, 使用 , 分割
范围控制
范围 含义
n 只显示第n项
n- 显示 从第n项 一直到行尾
n-m 显示 从第n项 到 第m项(包括m)
head -2 1.txt | cut -d ‘:’ -f 1,2
head -2 1.txt | cut -d ‘:’ -f 1-2
sort可针对文本文件的内容,以行为单位来排序。
路径
实现
第一步: 对字符串排序
[root@node01 tmp]# cat 2.txt
banana
apple
pear
orange
pear
[root@node01 tmp]# sort 2.txt
apple
banana
orange
pear
pear
第二步: 去重排序
参数 英文 含义
-u unique 去掉重复的
它的作用很简单,就是在输出行中去除重复行。
[root@node01 tmp]# sort -u 2.txt
apple
banana
orange
pear
第三步: 对数值排序
参数 英文 含义
-n numeric-sort 按照数值大小排序
-r reverse 使次序颠倒
准备数据
[root@node01 tmp]# cat 3.txt
1
3
5
7
11
2
4
6
10
8
9
默认按照字符串
排序
[root@node01 tmp]# sort 3.txt
1
10
11
2
3
4
5
6
7
8
9
升序
[root@node01 tmp]# sort -n 3.txt
1
2
3
4
5
6
7
8
9
10
11
倒序
[root@node01 tmp]# sort -n -r 3.txt
11
10
9
8
7
6
5
4
3
2
1
合并式
[root@node01 tmp]# sort -nr 3.txt
11
10
9
8
7
6
5
4
3
2
1
第四步: 对成绩排序
准备工作
vim score.txt
zhangsan 68 99 26
lisi 98 66 96
wangwu 38 33 86
zhaoliu 78 44 36
maq 88 22 66
zhouba 98 44 46
参数 英文 含义
-t field-separator 指定字段分隔符
-k key 根据那一列排序
根据第二段成绩 进行倒序显示 所有内容
sort -t ' ' -k2nr score.txt
目标:显示指定文件 字节数, 单词数, 行数 信息.
路径
实现
第一步: 显示指定文件 字节数, 单词数, 行数信息
命令 含义
wc 文件名 显示指定文件 字节数, 单词数, 行数 信息
[root@hadoop01 export]# cat 4.txt
111
222 bbb
333 aaa bbb
444 aaa bbb ccc
555 aaa bbb ccc ddd
666 aaa bbb ccc ddd eee
[root@hadoop01 export]# wc 4.txt
6 21 85 4.txt
第二步: 只显示 文件 的行数
[root@hadoop01 export]# wc 4.txt
6 21 85 3.txt
第三步: 统计多个文件的 行数 单词数 字节数
[root@hadoop01 export]# wc 1.txt 2.txt 3.txt
4 4 52 1.txt
11 11 24 2.txt
6 21 85 3.txt
21 36 161 总用量
[root@hadoop01 export]# wc *.txt
4 4 52 1.txt
11 11 24 2.txt
6 21 85 3.txt
6 6 95 score.txt
27 42 256 总用量
第四步: 查看 /etc 目录下 有多少个 子内容
[root@hadoop01 export]# ls /etc | wc -w
240
uniq 命令用于检查及删除文本文件中重复出现的行,一般与 sort 命令结合使用。
目标
路径
实现
** 第一步:实现去重效果**
命令 英文 含义
uniq [参数] 文件 unique 唯一 去除重复行
排序并去重
[root@hadoop01 export]# cat 5.txt | sort | uniq
第二步:不但去重,还要 统计出现的次数
参数 英文 含义
-c count 统计每行内容出现的次数
[root@hadoop01 export]# cat 5.txt | sort | uniq -c
小结
通过 uniq [选项] 文件 就可以完成 去重行 和 统计次数
目标
tee
可以将命令结果 通过管道 输出到 多个文件中cat 5.txt | sort | uniq -c | tee a.txt b.txt c.txt
小结
通过 tee 可以将命令结果 通过管道 输出到 多个文件中
目标
tr
命令用于 替换 或 删除 文件中的字符。路径
实现
第一步: 实现 替换效果
目标
通过 split
命令将大文件 切分成 若干小文件
路径
** 准备工作:**
vim score.txt
zhangsan 68 99 26
lisi 98 66 96
wangwu 38 33 86
zhaoliu 78 44 36
maq 88 22 66
zhouba 98 44 46
实现
** 第一步: 按 字节 将 大文件 切分成 若干小文件**
** 第二步: 按 行数 将 大文件 切分成 若干小文件**
小结
目标
步骤
实现
第一步: 搜索 zhangsan 和 lisi 的成绩
命令 含义
awk ‘/zhangsan|lisi/’ score.txt 模糊查询
** 第六步: 段内容 求学科平均分**
目标
实现 查询 功能