【发布时间】:2022-11-25 02:14:35
【问题描述】:
尝试使用 AWK 处理 CSV 文件,但是我遇到了一个问题,我行中的许多单元格已经包含逗号 ,,这意味着我无法使用 awk -F, 分隔字段。
CSV文件
Name,...DATE,COLUMNX,ADDRESSES
host1,...,NOV 24, 2022,['Element1', 'Element2'],"['192.168.x.99', 'fe80:XX','192.168.x.100', fe80:XX]"
host2,...,NOV 24, 2022,['Element3'],"['192.168.x.101', 'fe80:XX']"
... 表示包含[、,、'、" 的行/列
我试过的:awk -F, '{print $X}'
这给了我以下输出:
'Element2']
"['192.168.x.101'
我想要完成的事情:
host1 192.168.x.99
host1 192.168.x.100
host2 192.168.x.101
【问题讨论】:
-
,...,代表多少列?另外,是否有任何列在包含所需 IP 地址之前有"、[或'? -
是的,我已经更新了问题。
-
谢谢。我将发布一种可行的方法,但您可能必须更改列号才能获得所需的部分。
-
您的 CSV 无效:应引用包含逗号的字段(请参阅
ADDRESSES字段)
标签: awk