【发布时间】:2020-08-23 16:38:44
【问题描述】:
我想在 sun solaris 上使用 awk 解析文本文件,并且在基因组终端 2.6.1 上执行。
我在论坛的支持下开始使用下面的代码。
从第一部分开始,然后我们将进入其他部分。
下面的代码只打印 ADD IP= A|B|C 但没有引号(输出文件中的引号是强制性的)。
有人可以帮我吗?
nawk -v s1="\" ' /^IPDATA/ && /IPID .*/{ if(FNR>1) print s1 "ADD IP" s1 "="s1 $NF OFS s1 }' test
注意:在示例中,Ref 是 IPREF 行的总和,我们有三个:[2] && [2] && [1]。
示例文本文件实际上很大,但我已对其进行了总结:
IPDATA=A IPID A
IPDATA=A IPREF [2] =
--- IPREF = VRID=A_1
--- IPREF = VRID=A_2
IPDATA=B IPID B
IPDATA=B IPREF [2] =
--- IPREF = VRID=B_1
--- IPREF = VRID=B_2
IPDATA=C IPID C
IPDATA=C IPREF [1] =
--- IPREF = VRID=C_1
预期输出:
"ADD IP=A "
show
(
set "ELEM =1"
id "A"
MT POL
M1 no
M2 5
AD 2
Ref sum of IPREF 2
"Type vlan=VRID=A_1"
"Type vlan=VRID=A_2"
)
"ADD IP=B "
show
(
set "ELEM =1"
id "B"
MT POL
M1 no
M2 5
AD 2
Ref sum of IPREF 2
"Type vlan=VRID=B_1"
"Type vlan=VRID=B_2"
)
"ADD IP=C "
show
(
set "ELEM =1"
Id "C"
MT POL
M1 no
M2 5
AD 2
Ref sum of IPREF 1
"Type vlan=VRID=C_1"
)
谢谢
【问题讨论】:
-
您的预期输出不清楚,请告诉我们获取此输出的逻辑。