我必须比较两个不同/etc/hosts
文件的IP,并在并排视图中显示差异。
文件hosts_sorted
10.244.74.152 REF_UP-4
10.244.74.154 REF_UP-5
10.244.74.156 REF_UP-6
10.244.74.153 REF_UP-7
10.244.74.155 REF_UP-8
10.244.74.157 REF_UP-9
10.244.74.159 REF_UP-10
10.244.74.160 REF_UP-11
文件hosts_new_sorted
10.244.74.152 REF_UP-4-new
10.244.74.154 REF_UP-5-new
10.244.74.156 REF_UP-6-new
10.244.74.153 REF_UP-7-new
10.244.74.155 REF_UP-8-new
10.244.74.157 REF_UP-9-new
10.244.74.160 REF_UP-11-new
而我的预期输出
< 10.244.74.159 REF_UP-10
我已经按IP对条目进行了排序并使用了diff <(cut -f1 hosts_sorted) <(cut -f1 hosts_new_sorted)
。但是,这会切出所需的主机名。有没有办法告诉diff仅使用第一列?但是,比较不应包括第二列。
试试这个,
awk 'FNR==NR{a[$1];next}!($1 in a)' hosts_new_sorted hosts_sorted
10.244.74.159 REF_UP-10
它将检查hosts_sorted
in中第一列的存在(hosts_new_sorted
如果不可用,将进行打印)。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句