#!/bin/bash
awk '{
if ($0 ~ /^(([1-9]?[0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([1-9]?[0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$/) {
print "yes"
} else if ($0 ~ /^(0|[1-9][0-9]{0,2})\.(0|[1-9][0-9]{0,2})\.(0|[1-9][0-9]{0,2})\.(0|[1-9][0-9]{0,2})$/) {
print "no"
} else {
print "error"
}
}' nowcoder.txt
另一位同学题解中no的情况判断有误,这里改成0.0.0.0-999.999.999.999

京公网安备 11010502036488号