Linux 命令
两个文件比对,求交集,并集,差集。
a.txt
1 | aaaaa |
b.txt
1 | aaaaa |
方法1: sort
交集:
$sort a.txt b.txt | uniq -d
1 | aaaaa |
并集:
sort a.txt b.txt | uniq
1 | aaaaa |
差集:
sort a.txt b.txt b.txt | uniq -u
1 | bbbbb |
说明: sort 先给文件排序。
-d 显示次数大于一次的行
-u 显示次数仅为一次的行
方法2: comm
comm a.txt b.txt
1 | aaaaa |
显示三列:
第一列:a中有,b没有。a差b comm -2 -3 a.txt b.txt
第二列:a没有,b有。 b差a comm -1 -3 a.txt b.txt
第三列:ab都有 a交b comm -1 -2 a.txt b.txt
大小写互转
注意: 以下命令Mac OS无效
sed ‘s/[a-z]/\u&/g’
sed ‘s/[A-Z]/\l&/g’
拆解每一行中固定关键字的列
sed ‘s/.(action=[a-zA-Z]{1,}).(cmd=[_a-zA-Z-]{1,})./\1 \2/‘
注意:在次数匹配时:
1)圆括号必须转义
2)花括号必须转义