【发布时间】:2021-02-16 07:11:47
【问题描述】:
我有一个如下所示的 csv 文件
"10.8.70.67","wireless",,"UTY_07_ISD",,26579
"10.8.70.69","wireless",,"RGB_34_FTR",,19780
我想检索第一、第二和第四列值(不带引号)并以以下格式填充到另一个 csv 中。
IP DEVICETYPE DEVICENAME
10.8.70.67 wireless UTY_07_ISD
10.8.70.69 wireless RGB_34_FTR
我使用了下面的 awk 命令
awk -F ',|,,' '{gsub(/"/,"",$1); gsub(/"/,"",$2); gsub(/"/,"",$3); print $1, $2, $3}' file.csv
得到下面的输出
10.8.70.67 wireless UTY_07_ISD
10.8.70.69 wireless RGB_34_FTR
请帮助为每一列分配标题。
【问题讨论】:
-
@tink,恕我直言,这看起来不像是这个问题的骗子。
-
您想要的输出根本不是 CSV。请澄清;你真的想要 CSV 的答案(在这种情况下重复是正确的)还是固定宽度的空格分隔列?
-
Hi, I am able to get the required output. I just want to add heading to each column.OP 在我的答案部分给出了这个评论,我认为 OP 可能不需要输出中的 csv 文件,但让我们等待 OP 回到这里,尽管我仍然会说现在做这个欺骗还为时过早,一旦 OP 确认了这一点并且欺骗链接对他来说工作正常,那么它肯定是一个欺骗。 -
我已经重新打开了这个问题,通过在答案部分
Hi, I am able to get the required output. I just want to add heading to each column.(看起来不像是正确的欺骗)上看到 OP 的 cmets,如果 OP 确认三人组的上述 cmets 然后将投票让它欺骗,谢谢。 -
@tink,你好,tink,我可以从历史中看到stackoverflow.com/questions/37216107/…这个链接,这与你现在分享的完全不同。所以我检查了这个链接。此外,OP 解决此问题的方法在这里看起来并不好,因此此处给出的方法将有助于使该部分高效,同时仅添加标题恕我直言。