想要捕获一个特定的变量,在这种情况下DataIp
,并打印它的值。
数据:
<UnitInstance DataIp="10.1.1.1" Hostname="crg11" ID="30">
输出:
10.1.1.1
例如....
$ grep -Po '(?<=DataIp=\")[^\"]+' file
10.1.1.1
我们寻找之后的任何内容DataIp="
并打印所有内容,直到找到"
. 请注意,双引号需要转义:\"
.
与sed
:
$ sed 's/.*DataIp=\"\([^\"]*\)\".*/\1/g' file
10.1.1.1
我们捕捉到这个词DataIp
然后打印它。
考虑到我们想要捕获被 包裹的第一个单词的一般情况"
,我们也可以这样做......
与awk
:
$ awk -F\" '{print $2}' file
10.1.1.1
我们根据"
分隔符拆分字段中的记录并打印第二个。
与cut
:
$ cut -d'"' -f2 file
10.1.1.1
我们根据"
分隔符拆分字段中的记录并打印第二个。