[已解决][问题]删除重复列

sh/bash/dash/ksh/zsh等Shell脚本
回复
caike
帖子: 30
注册时间: 2005-12-09 16:22
送出感谢: 0
接收感谢: 0

[已解决][问题]删除重复列

#1

帖子 caike » 2008-08-26 9:06

很郁闷, 用sed来删除一个Txt里的重复列:

代码: 全选

#删除连续的重复列
sed -i -n 'G; s/\n/&&/; /^\([ -~]*\n\).*\n\1/d; s/\n//; h; P' faults.txt
#删除不连续的重复列
sed -i '$!N; /^\(.*\)\n\1$/!P; D' faults.txt
这段代码在cygwin下执行没问题, 今天拿到ubuntu上试了一下, 无效 :oops:
哭....
上次由 caike 在 2008-08-27 11:44,总共编辑 1 次。
java程序员 linux菜鸟 C++初学者
http://ke-cai.net
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙
送出感谢: 4 次
接收感谢: 256 次

#2

帖子 eexpress » 2008-08-26 9:10

man sort
● 鸣学
caike
帖子: 30
注册时间: 2005-12-09 16:22
送出感谢: 0
接收感谢: 0

#3

帖子 caike » 2008-08-26 9:43

谢谢提示, 原来用Sort这么的简单

代码: 全选

sort faults.txt | uniq 
:D

不过还有一点没搞明白, 如何能直接改动这个文件, 把这个Sort之后的结果overwrite到原来的文件.
要加什么参数呢? 我看了一下man sort, 好像也没哪个参数合适的.
java程序员 linux菜鸟 C++初学者
http://ke-cai.net
头像
patrickhe
帖子: 681
注册时间: 2005-07-21 19:13
来自: Peking, China
送出感谢: 0
接收感谢: 0
联系:

#4

帖子 patrickhe » 2008-08-26 10:53

sort -u faults.txt -o faults.txt
回复

回到 “Shell脚本”