应查尔斯·达菲(Charles Duffy)的要求以更窄的焦点重新创建此内容。
我有一个如下所示的 CSV 文件:
Security Policy: Blahblahblah,,,,,,,,,
12,,host_A,net-B,https,drop,Log,Any,Any,comments
13,,host_A,net-B,smtp,drop,Log,Any,Any,comments
14,,host_A,net-B,http,accept,Log,Any,Any,comments
,,net-C,,,,,,,
,,net-D,,,,,,,
15,,host_A,net-B,http,accept,Log,Any,Any,comments
,,host_B,net-C,service_X,,,,,
,,host_C,net-D,service_y,,,,,
,,host_D,,,,,,,
,,host_E,,,,,,,
我需要分别解析每个值,但是我需要在各自的语句中包含 $1。如您所见,这对于 13 和 14 来说很容易,但是当 14 和 15 的列为空白(子级)时,这将成为一个严重的问题。
循环这个最好的方法是什么?
例如,我希望输出看起来像:
'text goes here' $1 'more text' $3 'more text'
'text goes here' $1 'more text' $4 'more text'
等等
使用实际值(对于 15):
'text goes here' 15 'more text' host_A 'more text'
'text goes here' 15 'more text' host_B 'more text'
'text goes here' 15 'more text' host_C 'more text'
'text goes here' 15 'more text' host_D 'more text'
'text goes here' 15 'more text' host_E 'more text'
'text goes here' 15 'other text' net-B 'more text'
'text goes here' 15 'other text' net-C 'more text'
'text goes here' 15 'other text' net-D 'more text'
'text goes here' 15 'text' http 'more text'
'text goes here' 15 'text' service_X 'more text'
'text goes here' 15 'text' service_y'more text'
等等等等。
谢谢,