我有两个文件input1.txt和input2.txt。
input1.txt包含以下详细信息:
abcd
bcad
cagh
degh
usna
input2.txt有以下详细信息:
abcd.dev.net ip: 169.254.0.2
bcad.prod.net ip: 169.254.0.3
cagh.uat.net ip: 169.254.0.4
us-1212-qwe.net ip: 169.254.232.50
us-cisco.net ip: 10.120.2.3
degh.stage.net ip: 169.254.0.5
usna.prod.net ip: 169.254.0.6
ab1234.net ip: 169.254.0.7
- catorr.net ip:169.254.0.8
我需要从“input2.txt”文件中获取“input1.txt”中列出的服务器的相应IP详细信息
输出应该是这样的:
abcd.dev.net 169.254.0.2
bcad.prod.net 169.254.0.3
cagh.uat.net 169.254.0.4
degh.stage.net 169.254.0.5
usna.prod.net 169.254.0.6
答案 0 :(得分:1)
grep
会工作:
grep -Fwf input1 input2
abcd.dev.net ip: 169.254.0.2
bcad.prod.net ip: 169.254.0.3
cagh.uat.net ip: 169.254.0.4
degh.stage.net ip: 169.254.0.5
usna.prod.net ip: 169.254.0.6
答案 1 :(得分:1)
如果你想只在第一个时期加入,你可以使用这个
$ join -t. input1 <(sort input2)
abcd.dev.net ip: 169.254.0.2
bcad.prod.net ip: 169.254.0.3
cagh.uat.net ip: 169.254.0.4
degh.stage.net ip: 169.254.0.5
usna.prod.net ip: 169.254.0.6
如果input1未排序,请执行相同的<(sort input1)