Aft*_*nix 1 linux shell awk diff
假设我有两个文件,如下所示:
file1
a 23
b 34
c 47
file2
a justin_beiber_sucks
b segmentation fault
c jackson
d nop
Run Code Online (Sandbox Code Playgroud)
现在我想要的是获得两个文件的第一列的差异。我现在正在做
$cat file1 awk '{print $1}'> f1
$cat file2 awk '{print $1}'> f2
$diff -u f1 f2
Run Code Online (Sandbox Code Playgroud)
但是这种方法感觉很迟钝。有什么棘手的方法吗?
问题是我总是将pipe
s 视为一维的东西,但这里是二维的。我的意思是 diff 的输入必须同时来自两个不同的来源。
起点可能是 awk 脚本将读取两个文件,进行过滤并将结果保存在临时关联数组中,接下来它将调用 diff 并提供其输入。