在shell脚本中将(.....)中的所有数据合并到一行中

时间:2016-06-29 08:22:25

标签: shell

我是shell脚本的新手,我需要一些帮助,我有一个像

这样的SQL文件
SELECT DISTINCT  F1.COL1,
F1.COL5 ADDRESS ,
    COALESCE(COL1,
    COL2,
    COL3,
    COL4),
F1.COL7
FROM TABLE1 F1

我需要在一行中打印,如

SELECT DISTINCT  F1.COL1,
F1.COL5 ADDRESS ,
COALESCE(COL1,COL2,COL3,COL4),
F1.COL7
FROM TABLE1 F1

由于

1 个答案:

答案 0 :(得分:0)

使用sed:

sed '/(/{:a;N;s/^ *//;s/\n *//;/)/!{ba}}' file

要编辑文件 ,请添加-i选项:

sed -i '/(/{:a;N;s/^ *//;s/\n *//;/)/!{ba}}' file

所有以(开头的行都会加入到包含)的下一行。