cat test.txt a.b.c.d 11.1.1.1 9.9.9.9 8.8.8.8 127.0.0.1 20.02.04.01 获取IP地址 egrep '(^([1-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.)(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){2}([0-9]|[1-9]{2}|1[0-9]{2}|2[0-4][0-9]|25[0-5])$' test.txt
egrep ' (^([1-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.) 获取IP地址的第一段 (([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){2} 获取IP地址的第二段和第三段 ([0-9]|[1-9]{2}|1[0-9]{2}|2[0-4][0-9]|25[0-5])$' test.txt 获取第四段 解释如下: ^ 表示以....开头 [1-9] 表示1位数,取数字1-9范围 | 表示或者 [1-9][0-9] 表示2位数,取数字10-99范围 1[0-9]{2} 表示3位数,取数字100-199范围 2[0-4][0-9] 表示3位数,取数字200-249范围 25[0-5] 表示3位数,取数字250-255范围 $ 表示以....结尾