shell小技巧

时间:2022-04-18 08:04:34

# awk '{a[$1]++;a[$2]++}END{for (i in a)print i "\t" a[i]}' list | grep -w 2 | awk '{print $1}' > double.list

# grep -f double.list list
10.145.137.125 10.145.137.130 181
10.145.137.130 10.145.137.125 159
100.104.0.46 100.104.0.54 122
10.151.132.145 10.151.132.140 56
10.145.137.124 10.145.137.138 54
10.151.132.140 10.151.132.145 49
10.145.137.138 10.145.137.124 25
100.104.0.54 100.104.0.46 23
10.153.8.15 10.153.8.31 21
10.153.8.31 10.153.8.15 21
10.151.132.167 10.151.132.168 18
10.151.132.168 10.151.132.167 13
10.89.28.6 10.89.28.18 10
10.89.28.18 10.89.28.6 9

# grep -vf double.list list
10.145.96.98 10.145.96.101 212
10.151.6.53 10.151.14.53 206
10.145.96.114 10.145.96.119 65
10.151.12.51 10.151.4.51 36
10.151.132.182 10.151.132.183 32
10.151.5.68 10.151.5.101 23
10.151.4.81 10.151.12.81 20
10.151.13.20 10.151.5.20 20
10.151.14.32 10.151.6.32 18
10.151.12.20 10.151.4.20 15