我试图在一个文件中输出第一个八位数的所有IP。
文件结构:
1.56.46.44
244.34.56.90
198.168.1.1
等等。
我正在寻找的只是
1.56.46.44
我试过:
grep -E "[^^][0-9].[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}" file.txt,它输出每个IP突出显示的几个数字。
也曾尝试过:
grep -o -n '\b[0-9].' file.txt,它输出任何一个数字八进制。
发布于 2022-11-09 23:20:13
您需要转义.字符,否则它们将匹配任何内容,包括另一个数字。
而且你不应该在一开始就有[^^]。与^以外的任何字符匹配。因此,如果输入以12.开头,则1将由[^^]匹配。使用^本身来匹配行的开头。
grep -E '^[0-9]\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$' file.txthttps://stackoverflow.com/questions/74382443
复制相似问题