![需要去掉双引号中的注释](https://linux22.com/image/9324/%E9%9C%80%E8%A6%81%E5%8E%BB%E6%8E%89%E5%8F%8C%E5%BC%95%E5%8F%B7%E4%B8%AD%E7%9A%84%E6%B3%A8%E9%87%8A.png)
我有一个测试用例,其中包含双引号中的字符串消息,我想删除双引号中的数据。我使用awk
命令删除评论部分数据,但它不起作用
awk '/^"/ { print }' full-case
示例输入:
case('pr_ua_sfochi', "Response:answer(amount(2370.09,usd)", price).
预期输出:
case('pr_ua_sfochi',price).
请指教。
awk '{gsub(/".*",/,"");print}' file.txt 对于上述情况有效,但对于以下情况失败。这里第二个参数用双引号引起来。
实际案例:
case('pr_ua_sfochi',"
Response:
answer(amount(2370.09,usd),[[01AUG06SFO UA CHI Q9.30 1085.58FUA2SFS UA SFO Q9.30 1085.58FUA2SFS NUC2189.76END ROE1.0 XT USD 180.33 ZPSFOCHI 164.23US6.60ZP5.00AY XF4.50SFO4.5]],amount(2189.76,usd),amount(2189.76,usd),amount(180.33,usd),[[fua2sfs,fua2sfs]],amount(6.6,usd),amount( 4.5,usd),amount(0.0,usd),amount(18.6,usd),lasttktdate([20061002]),lastdateafterres(200712282]),[[fic_ticketinfo(fare(fua2sfs),fic([]),nvb([ ]),nva([]),tktiss([]),penalty([]),tktendorsement([]),tourinfo([]),infomsgs([])),fic_ticketinfo(fare(fua2sfs),fic([]),nvb([]),nva([]),tktiss ([]),penalty([]),tktendorsement([]),tourinfo([]),infomsgs([]))]],<>,<>,cat35(cat35info([])))
.
02/20/2006 17:05:10 Transaction 35 served by static.static.server1 (usclsefat002:7551) running E*Fare version $Name: build-2006-02-19-1900 $",
price(pnr(
user('atl','1y',<>,<>,dept(<>,'0005300'),<>,<>,<>),
[
passenger(adt,1,[ptconly(n)])
],
[
segment(1,sfo,chi,'ua','<>','100',20140901,0800,f,20140901,2100,'737',res(20140628,1316),hk,pf2(n,[],[],n),<>,flags(no,no,no,no,no,no,no,no ,no)),
segment(2,chi,sfo,'ua','<>','101',20140906,1000,f,20140906,1400,'737',res(20140628,1316),hk,pf2(n,[],[],n),<>,flags(no,no,no,no,no,no,no,no ,no))
]),[
rebook(n),
ticket(20140301,131659),
dbaccess(20140301,131659),
platingcarrier('ua'),
tax_exempt([]),
trapparm("trap:ffil"),
city(y)
])).
答案1
您可以使用 awk 来完成此操作
awk '{sub(/".*",/,"");print}' filename