Awk 匹配结果并在空格前显示文本
更确定如何在比赛前显示结果。我可以做一个简单的grep并显示与“llll”匹配的行。返回前如何显示标题。谢谢你的帮助 资料 结果Awk 匹配结果并在空格前显示文本,awk,sed,Awk,Sed,更确定如何在比赛前显示结果。我可以做一个简单的grep并显示与“llll”匹配的行。返回前如何显示标题。谢谢你的帮助 资料 结果 switch-051 "switch-052_LLLLL" 头记录上的NF==1{h=$1}记住头h /LLLLL/{print h or$NF}onllll记录打印头h和最后一个字段$NF 头记录上的NF==1{h=$1}记住头h /LLLLL/{print h or$NF}onllll记录打印头h和最后一个字段$NF 另一种选择awk awk -v RS
switch-051
"switch-052_LLLLL"
- 头记录上的NF==1{h=$1}记住头
h
on/LLLLL/{print h or$NF}
记录打印头llll
和最后一个字段h
$NF
- 头记录上的NF==1{h=$1}记住头
h
on/LLLLL/{print h or$NF}
记录打印头llll
和最后一个字段h
$NF
- 另一种选择
awk
awk -v RS= '{for(i=1; i<=NF; i++)
if($i~/LLLLL/) {print $1; print $i; exit}}' file
switch-051
"switch-052_LLLLL"
awk-vrs='{for(i=1;i另一种选择awk
awk -v RS= '{for(i=1; i<=NF; i++)
if($i~/LLLLL/) {print $1; print $i; exit}}' file
switch-051
"switch-052_LLLLL"
awk-vrs='{for(i=1;ikarakfa的答案很好
您也可以使用perl:
$ perl -ne 'BEGIN{ $/ = "" } print "$1\n$2" if /^(\S+).*?("[^"]+LLLLL")/s' file
switch-051
"switch-052_LLLLL"
卡拉卡法的回答很好
您也可以使用perl:
$ perl -ne 'BEGIN{ $/ = "" } print "$1\n$2" if /^(\S+).*?("[^"]+LLLLL")/s' file
switch-051
"switch-052_LLLLL"