连接操作这是关系数据库中的概念
文章目录
join工具
用于将两个文件进行连接,注意:它只能操作已经排过序的文件,默认只会显示匹配到共同域的记录
join语法
join [option] wenjian1 wenjian2
-i 比较域内容时,忽略大小写差异
-t 改变域分割符
-a1 显示除共同域的结果外,还显示第一个文件中没有共同域的记录
-a2 显示除共同域的结果外,还显示第二个文件中没有共同域的记录
-v2 不显示以共同域进行链接的结果
-3 指定匹配哪一个域(默认是第一个域)
join实例
qqq@ThinkPad-E540:~$ cat aa
A 23 56 100
B 90 52 111
C 45 57 78
D 86 50 70
E 20
qqq@ThinkPad-E540:~$ cat bb
A 优秀
B 良好
C 优秀
D 还行
F 啥
qqq@ThinkPad-E540:~$ join aa bb
A 23 56 100 优秀
B 90 52 111 良好
C 45 57 78 优秀
D 86 50 70 还行
qqq@ThinkPad-E540:~$ join -a1 aa bb
A 23 56 100 优秀
B 90 52 111 良好
C 45 57 78 优秀
D 86 50 70 还行
E 20
paste命令
将多个文件的内容合并到一个文件
#语法
paste [option] wenjian1 wenjian2
-d 设定新的域分割符
-s 将每个文件粘贴成一行
- 从标准输入中读取数据
#实例
paste aa bb
ppp@ThinkPad-E540:~$ paste aa bb
A 23 56 100 A 优秀
B 90 52 111 B 良好
C 45 57 78 C 优秀
D 86 50 70 D 还行
E 20 F 啥
cut命令
用于从标准输入或文本文件中按域或行提取文本
#语法
cut [option] wenjian
-c 指定提取的字符数,或字符范围
-f 指定提取的域,或域范围
-d 改变域分割符
#实例
cut -c3 aa #提取aa的第三个字符
cut -d: -f1 /etc/passwd #提取第一个域
cut -d: -f1,4 /etc/passwd #提取第一个和第4个域
cut -d: -f1-4 /etc/passwd #提取第1个到第4个域
如果文章对你有帮助,欢迎点击上方按钮打赏作者
暂无评论