我的文件包含如下数据
Create table (
col1 int,
col2 string,
Primary key (Col1,
col2)
)
我想评论Primary
行,并删除在关键字,
之前发生的primary
。我想添加多行注释直到主键定义结束
输出:
Create table (
col1 int,
col2 string
#Primary key (Col1,
#col2)
)
答案 0 :(得分:0)
试试这个:
sed 'N;s/, *\n *Primary/\n#Primary/' file
说明:
N
:在模式空间中添加下一行s/, *\n *Primary/\n#Primary/
:从模式空间的第一行删除尾随,
,并在第二行将Primary
替换为#Primary
答案 1 :(得分:0)
这很有效。保留捕获的组允许重新注入换行。
$ sed 'N;s/, *\(\n\)\(Primary key\)/\1#\2/' input.txt
Create table (
col1 int,
col2 string
#Primary key (Col1)
)