如:有如下 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
Yang2635 2022-08-10 23:10:19 +08:00 via Android 2
sort a.txt b.txt | uniq -u
|
2
yinyu 2022-08-10 23:10:23 +08:00
两个都要遍历一遍,然后再对方里面 grep ,然后 wc 看看行数,如果等于零就说对方没有,就写到 c 里面,可能大佬们,有更好的办法吧。
|
3
Yang2635 2022-08-10 23:10:43 +08:00 via Android
comm -13 a.txt b.txt
|
4
nuk 2022-08-10 23:10:45 +08:00
可以用 comm ,但是要求输入是已经排序好的
|
5
Privileges 2022-08-10 23:11:20 +08:00
grep -wvf a.txt b.txt
|
6
id4alex 2022-08-10 23:13:05 +08:00 1
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
weiiai 2022-08-10 23:13:53 +08:00 1
diff -a a.txt b.txt | grep ">" | sed 's/> //'
|
8
mantis OP 需要输出到一个新文件,需要完整的 shell 脚本,不是简单的命令,谢谢大家。
|
9
id4alex 2022-08-10 23:14:21 +08:00
又从各位老哥这里学习到了 shell 技巧
|
11
wbd31 2022-08-10 23:21:31 +08:00
diff a.txt b.txt | awk '{if($0~/^[<>]/)print substr($0, 3)}'
|
12
PMR 2022-08-10 23:24:11 +08:00 via Android
这问题前几天有人问过
另 shell 脚本不就是塞命令进去? 还能编译个二进制不成? |
13
xiadong1994 2022-08-11 01:53:19 +08:00
|
15
codingBug 2022-08-11 03:19:37 +08:00
善用[搜索引擎]( 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` |
16
aaa5838769 2022-08-11 08:00:57 +08:00
上面各个大佬都已经给完整的命令,脚本就是有各种命令组成的,你自己粘贴进去就可以用了。
|
17
masker 2022-08-11 09:03:50 +08:00 via Android 13
伸手党的胜利:大佬已经给出了答案,还嫌大佬不够手把手教
|
18
qooweds 2022-08-11 09:06:37 +08:00
又到了学习 shell 花式技巧的时间啦,期待更多新命令
|
19
knightdf 2022-08-11 09:26:30 +08:00
comm -3 <(sort a.txt) <(sort b.txt)
|
20
cwcc 2022-08-11 09:33:30 +08:00
借个楼问下,如果是那种.patch 的文件,怎么应用到文件上呢?还有.patch 文件是怎么来的
|
21
oneisall8955 2022-08-11 09:53:36 +08:00 via Android 3
请善用搜索引擎,端饭人前还嚷嚷要喂吗?
|
24
try4times 2022-08-11 13:05:21 +08:00
某公司在赛码上的笔试题?
|
25
bmsac0001 2022-08-11 13:18:13 +08:00 via Android
为什么不用 diff
|
26
maxbon 2022-08-11 15:30:53 +08:00
先排序再用 diff 呀
|
27
Acoolda 2022-08-11 16:40:37 +08:00
我推荐大家每日一问,大佬收获指导众生的满足感,我们收获知识。两全其美.
|