如:有如下 2 个文件:
$ cat a.txt
1111111
2222222
3333333
7777777
9999999
$ cat b.txt
1111111
2222222
3333333
4444444
7777777
5555555
6666666
8888888
9999999
将 2 个文件的差级输出到文件 c.txt
$ cat c.txt
4444444
5555555
6666666
8888888
请问如何实现?
如:有如下 2 个文件:
$ cat a.txt
1111111
2222222
3333333
7777777
9999999
$ cat b.txt
1111111
2222222
3333333
4444444
7777777
5555555
6666666
8888888
9999999
将 2 个文件的差级输出到文件 c.txt
$ cat c.txt
4444444
5555555
6666666
8888888
请问如何实现?
|
1
sort a.txt b.txt | uniq -u
|
|
yinyuAug 10, 2022
2
两个都要遍历一遍,然后再对方里面 grep ,然后 wc 看看行数,如果等于零就说对方没有,就写到 c 里面,可能大佬们,有更好的办法吧。
|
|
Yang2635Aug 10, 2022 via Android
3
comm -13 a.txt b.txt
|
|
nukAug 10, 2022
4
可以用 comm ,但是要求输入是已经排序好的
|
|
PrivilegesAug 10, 2022
5
grep -wvf a.txt b.txt
|
|
6
cat a.txt b.txt | sort | uniq > tmp.txt
grep -vf a.txt tmp.txt > c.txt grep -vf b.txt tmp.txt >> c.txt |
|
7
diff -a a.txt b.txt | grep ">" | sed 's/> //'
|
|
8
需要输出到一个新文件,需要完整的 shell 脚本,不是简单的命令,谢谢大家。
|
|
id4alexAug 10, 2022
9
又从各位老哥这里学习到了 shell 技巧
|
|
wbd31Aug 10, 2022
11
diff a.txt b.txt | awk '{if($0~/^[<>]/)print substr($0, 3)}'
|
|
PMRAug 10, 2022 via Android
12
这问题前几天有人问过
另 shell 脚本不就是塞命令进去? 还能编译个二进制不成? |
|
codingBugAug 11, 2022
15
善用[搜索引擎]( https://unix.stackexchange.com/questions/428419/how-to-write-the-difference-between-two-files-into-a-file)
不知道是不是你要的效果 `diff a.txt b.txt|grep ">"| cut -c 3- > c.txt` |
|
MilkShakeAug 11, 2022
16
上面各个大佬都已经给完整的命令,脚本就是有各种命令组成的,你自己粘贴进去就可以用了。
|
|
17
伸手党的胜利:大佬已经给出了答案,还嫌大佬不够手把手教
|
|
qoowedsAug 11, 2022
18
又到了学习 shell 花式技巧的时间啦,期待更多新命令
|
|
knightdfAug 11, 2022
19
comm -3 <(sort a.txt) <(sort b.txt)
|
|
cwccAug 11, 2022
20
借个楼问下,如果是那种.patch 的文件,怎么应用到文件上呢?还有.patch 文件是怎么来的
|
|
21
请善用搜索引擎,端饭人前还嚷嚷要喂吗?
|
|
try4timesAug 11, 2022
24
某公司在赛码上的笔试题?
|
|
bmsac0001Aug 11, 2022 via Android
25
为什么不用 diff
|
|
maxbonAug 11, 2022
26
先排序再用 diff 呀
|
|
AcooldaAug 11, 2022
27
我推荐大家每日一问,大佬收获指导众生的满足感,我们收获知识。两全其美.
|