【发布时间】:2019-11-07 15:20:23
【问题描述】:
我有文件包含这个
abc = <0x0 0x1>;
abc = <0x0 0x1 0x2>;
def = <0x0123 0x4567 0x89AB 0xCDEF>;
def = <0x0 0x1>;
def = <0x1 0x2 0x3 0x4>;
abc = <0x0 0x2 0x4 0x6>;
def = <0x0 0x1 0x2 0x3 0x4 0x5>;
我需要把它转换成
abc = <0x0 0x1>;
abc = <0x0 0x1 0x2>;
def = <0x0123 0x4567>, <0x89AB 0xCDEF>;
def = <0x0 0x1>;
def = <0x1 0x2>, <0x3 0x4>;
abc = <0x0 0x2 0x4 0x6>;
def = <0x0 0x1 0x2 0x3 0x4 0x5>;
我只需要将带有 4 个十六进制数字的三角括号拆分为一对括号,用逗号分隔,里面有 2 个十六进制数字,并且只在以 'def = ' (或 'def = '前面有任何符号)。如何使用 sed、awk 或 grep 做到这一点?
【问题讨论】:
-
我们的目标是在您的问题中添加一些您自己的代码,以至少显示您为解决这个问题所做的研究工作。
-
因为它不是从 'def = ' 开始的
-
@ComptrollerChanel,当然,请在您的帖子中添加您的努力,然后让我们知道。
-
我什至不知道大致如何实现它
-
@ComptrollerChanel,我明白了,我们都在这里互相学习,所以我们鼓励用户在他们的问题上付出一些努力,当他们卡在某个地方时,他们会得到指导,你可以使用搜索本网站的功能也在发布之前。