我有一个包含这样的文件:
name=MOD0
Run Code Online (Sandbox Code Playgroud)
还有很多我不感兴趣的额外行。我需要将此行转换为:
[MOD0]
Run Code Online (Sandbox Code Playgroud)
并从文件中删除所有其他行。MOD0 部分是不可预测的,所以我需要通过 ^name= 模式匹配该行。我可以执行一个替换(删除“名称=”),但是我如何告诉 sed 执行另一个操作(用括号括起来),仍然在同一匹配行上?以下命令用括号将每一行括起来:
sed -n -e '/^name=/ s/^name=//p; s/^.*$/\[&\]/p'
Run Code Online (Sandbox Code Playgroud) sed ×1