【发布时间】:2012-02-13 18:06:14
【问题描述】:
我有一个名为 test 的文件,其中包含未知的行数:
<label>blogname</label><type>string</type>
<label>blog description</label><type>text</type>
我想使用 SED 或 AWK 来读取该文件并将每个标签和每种类型存储到一个单独的变量中,甚至更好地存储到一个数组中。
此示例将在文件中输出标签的内容:
awk -vRS="</variable>" '/<variable>/{gsub(/.*<variable>/,"");print}' test >result
但我需要每一行的内容,并通过每个标签的内容将它们分开,给我这样的东西:
label="blogname"
type="string"
然后我需要使用 do while 脚本处理数组。
我已经为这个问题寻找了几个小时的解决方案,但没有运气。
【问题讨论】:
-
您可能会编写一个
awk脚本来输出一行带有标签的行,然后是一行带有类型的行,并在bash 的while循环中使用read将值放入大批。查找read和 bash 数组。
标签: arrays bash multidimensional-array sed