【发布时间】:2013-05-11 05:04:38
【问题描述】:
我在 Unix 中有一个包含数百万条 SQL 语句的文件。 现在其中一些被分成多行。显然,我希望它们使用 sed 或 awk 或其他任何处理组合成一行。
例子:
INSERT INTO EMP
(EMP,ENAME)
VALUES
('1', 'John');
或
UPDATE EMP SET
ENAME='Samantha' WHERE
DEPT=20;
现在该文件还可以包含 SQL 集合语句,例如:
set term off;
我们不需要对这些行做任何事情。
所以基本上我们需要找到以“INSERT”或“UPDATE”或“DELETE”开头的行,然后开始在多行中搜索下一个分号,并将这些行连接成一行。我们可以在 awk/sed/perl 中实现吗?
【问题讨论】:
-
“显然我希望它们合并成一行”。对我来说,这并不明显。