shell 文件处理

linux文件合并去重 
cat loginpc.txt | awk -F 'userName:' '{print $2}' | awk -F 'remoteAddr' '{print $1}'| sort | uniq| wc -l

2012-07-19 10:30:30|  分类: 默认分类 |字号 订阅
(1)两个文件的交集,并集
前提条件:每个文件中不得有重复行
1. 取出两个文件的并集(重复的行只保留一份)


Shell代码 
cat file1 file2 | sort | uniq > file3 

2. 取出两个文件的交集(只留下同时存在于两个文件中的文件)
Shell代码 
cat file1 file2 | sort | uniq -d > file3 

3. 删除交集,留下其他的行
Shell代码 
cat file1 file2 | sort | uniq -u > file3 

(2)两个文件合并
一个文件在上,一个文件在下
Shell代码 
cat file1 file2 > file3 

一个文件在左,一个文件在右
Shell代码 
paste file1 file2 > file3 

(3)一个文件去掉重复的行
Shell代码 
sort file | uniq 

注意:重复的多行记为一行,也就是说这些重复的行还在,只是全部省略为一行!
Shell代码 
sort file |uniq –u 

上面的命令可以把重复的行全部去掉,也就是文件中的非重复行!

uniq -c 显示重复的行号

猜你喜欢

转载自aircoder.iteye.com/blog/1926132