Chinaunix

标题: 问一个关于过滤文本文件的问题。 [打印本页]

作者: lizhenjia    时间: 2003-09-06 10:52
标题: 问一个关于过滤文本文件的问题。
1.txt :
        1,2
        2,3
        3,4
     2.txt:
        1,2
如何得到,在1.txt文件中存在,但在2.txt中不存在的文本行呢?(1.txt,2.txt的数据量非常大,数万条)
我用cat 1.txt | grep -v $(cat 2.txt),不好使,提示:
bin/bash: /usr/bin/grep: The parameter or environment lists are too long,如何实现呢?
作者: dong_1997    时间: 2003-09-06 11:45
标题: 问一个关于过滤文本文件的问题。
用awk等命令编辑成insert语句插入到表中,用sql不就搞定了。
作者: yoursmile    时间: 2003-09-06 13:09
标题: 问一个关于过滤文本文件的问题。
那就用更原始的方法,循环来grep.
作者: lizhenjia    时间: 2003-09-06 20:39
标题: 问一个关于过滤文本文件的问题。
用数据库肯定是可以解决的,不过太麻烦了,能否有比较简单的方法呢?
作者: admirer    时间: 2003-09-06 21:10
标题: 问一个关于过滤文本文件的问题。
原帖由 "lizhenjia" 发表:
1.txt :
        1,2
        2,3
        3,4
     2.txt:
        1,2
如何得到,在1.txt文件中存在,但在2.txt中不存在的文本行呢?(1.txt,2.txt的数据量非常大,数万条)
我用cat 1.txt | grep -v $(cat 2.tx..........
   
  1. comm -23 f1 f2
复制代码

作者: bjgirl    时间: 2003-09-06 23:07
标题: 问一个关于过滤文本文件的问题。
[quote]原帖由 "admirer"][/quote 发表:
     
还是版主厉害呢!我也用comm实验了半天,就没有想到-23这样的用法!
作者: yoof    时间: 2003-09-07 10:55
标题: 问一个关于过滤文本文件的问题。
-23 是什么参数?
作者: bjgirl    时间: 2003-09-07 11:00
标题: 问一个关于过滤文本文件的问题。
[quote]原帖由 "yoof"]-23 是什么参数?[/quote 发表:
     
comm命令是逐行比较已经排序好的文件.
他的格式:comm [-1|-2|-3] leftfile rightfile
-23的意思是说不显示仅在rightfile中有的行而且也不显示在leftfile文件,rightfile文件中都存在的行,,
作者: admirer    时间: 2003-09-07 12:48
标题: 问一个关于过滤文本文件的问题。
原帖由 "bjgirl"] [quote:14419bb5a6="yoof" 发表:
写到:
-23 是什么参数?

comm命令是逐行比较已经排序好的文件.
他的格式:comm [-1|-2|-3] leftfile rightfile
-23的意思是说不显示仅在rightfile中有的行而且也不显示在leftfile文件,rightfile文件中都存在的行,, [/quote]
对!
-13:就是只显示第二个文件特有的行
-23:就是只显示第一个文件特有的行
作者: yoursmile    时间: 2003-09-07 16:15
标题: 问一个关于过滤文本文件的问题。
原帖由 "bjgirl" 发表:
   
还是版主厉害呢!我也用comm实验了半天,就没有想到-23这样的用法!
   

linux 真是博大精深啊。
还有comm这个命令,我是第一次听说。

你们都厉害啊。
作者: bjgirl    时间: 2003-09-07 16:53
标题: 问一个关于过滤文本文件的问题。
原帖由 "yoursmile" 发表:
   

linux 真是博大精深啊。
还有comm这个命令,我是第一次听说。

你们都厉害啊。
   
在linux中很多命令的选项都可以这样用的,像ls -lat,ps -aux等,怎么就没有想到comm -23这样的呢?!唉,,,,,,版主就是版主!
linux 真是博大精深啊。
那当然,她是当今最有前途的OS,
作者: yoursmile    时间: 2003-09-07 16:57
标题: 问一个关于过滤文本文件的问题。
[quote]原帖由 "bjgirl"]那当然,她是当今最有前途的OS,[/quote 发表:
     

非常同意!

我要拜各位为师,努力学好linux.
:)
作者: bjgirl    时间: 2003-09-07 17:00
标题: 问一个关于过滤文本文件的问题。
不过,是不是可以用嵌套循环历遍的方法来逐行比较两个文件呢?
晚上再试试看
作者: admirer    时间: 2003-09-07 17:17
标题: 问一个关于过滤文本文件的问题。
原帖由 "bjgirl" 发表:
不过,是不是可以用嵌套循环历遍的方法来逐行比较两个文件呢?
晚上再试试看
  
当然可以(如果运行效率不是关键的话)!精神可嘉!
作者: bjgirl    时间: 2003-09-07 17:38
标题: 问一个关于过滤文本文件的问题。
原帖由 "admirer" 发表:
  
当然可以(如果运行效率不是关键的话)!精神可嘉!
   
当然,脚本的效率远不及像comm这样的二进制可执行程序,不过我想写一个跟comm类似的也有-123等选项的吧~~~,(自当是练练手). 谢谢版主GG的鼓励
作者: yoursmile    时间: 2003-09-07 17:50
标题: 问一个关于过滤文本文件的问题。
原帖由 "bjgirl" 发表:
   
当然,脚本的效率远不及像comm这样的二进制可执行程序,不过我想写一个跟comm类似的也有-123等选项的吧~~~,(自当是练练手). 谢谢版主GG的鼓励
   

好啊。加油!
写完了别忘了加注释,让我也学学啊。。
呵呵。
:wink:




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2