【发布时间】:2017-12-08 13:58:47
【问题描述】:
我想每次在同一行的文本文件中出现两个大括号时插入一个新行,但是我希望在第一个大括号之后或第二个大括号之前插入这个新行。 有没有办法通过使用 sed、grep 等命令来实现这一点。
这是一个例子:
之前:
你好,你好吗?
我很好。 }谢谢{..
之后:
你好,{
你好吗?
我很好。 }
谢谢{..
(或)
你好,{怎么样
}你是吗?
我很好。 }谢谢
{..
我尝试了下面的命令,但即使文件中的行有一个大括号,它也会添加新行,我只想在有两个括号时添加新行:
- sed -i 's/{/&\n/' 文件名 | grep -n "}" 文件名 | grep "{"
(或)
- sed -i 's/}/&\n/' 文件名 | grep -n "}" 文件名 | grep "{"
【问题讨论】:
标签: bash shell powershell sed grep