我正在编写一个sed脚本,但我不知道如何实现以下功能:
更新
如果当前行的第一个非空白字符是“{”,请将其删除并在上一行的末尾添加“{”。
例如:
class test
{
function fun()
{
if(true)
{
//do something
}
}
}
我需要以下结果:
class test{
function fun(){
if(true){
//do something
}
}
}
谁能帮帮我?
答案 0 :(得分:2)
单程
sed 'N;:1;$!N;s/\n{/{\n/;P;D;b1' file
输入
123
456
{345
678
{10112
{232
输出
123
456{
345
678 {
10112{
232
如果有"空格"在{
sed 'N;:1;$!N;s/\n[[:space:]]*{/{\n/;P;D;b1' file
还会在{
答案 1 :(得分:0)
这可能适合你(GNU sed):
sed 'N;s/\s*\n\s*{/{\n/;P;D' file