输入:
aaaa, bbbb, ccc, "dddd, ddd1", eee
eee, "fff, ggg, hhh
输出:
aaaa, bbbb, ccc, "dddd, ddd1", eee
eee, fff, ggg, hhh
我认为gsub
应该这样做,但是如何判断“只用了,什么都没有,”只是在所有行中有一次(有时会错误地发生)。
答案 0 :(得分:1)
这应该做:
awk -F'"' 'NF==2{sub(/"/,"")}7' file
答案 1 :(得分:0)
你可以尝试下面的awk命令,
$ awk '/^[^"]*"[^"]*$/{sub(/"/,"")}1' file
aaaa, bbbb, ccc, "dddd, ddd1", eee
eee, fff, ggg, hhh
搜索模式^[^"]*"[^"]*$
匹配只有一个"
引号的行。删除该行上的双引号将为您提供所需的结果。 sub
函数足以从一行中删除单个字符。