我正在尝试读取第一列有 IP 地址的那些行的文件。
我下面的命令没有返回任何值。
cat test.csv | awk '$1 == "^[[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}]" { print $0 }'
正则表达式可以捕获IP地址。
下面也试过了,
cat test_1.csv | awk '$1~/^[[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\]/ {print $0}'
测试.csv
1.1.1.1 ipaddress gateway
2.2.2.2 ipaddress_2 firewall
www.google.com domain google
最佳答案
您可以使用 grep
更轻松地完成此操作:
grep -P '^\d+(\.\d+){3}\s' test.csv
或
grep -P '^\d{1,3}(\.\d{1,3}){3}\s' test.csv
关于linux - awk 打印以正则表达式开头的行(IP 地址),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39306393/