4

我需要将文件中与模式匹配的所有行复制到第二个文件。

详细说明:我有一个 sql 转储并想创建第二个 sql 文件,其中包括名称与 dx_postings、dx_postings_archive 等名称匹配的表的所有命令。模式应该是 dx_postings。

有任何想法吗?我更喜欢 awk 或 sed 解决方案。

4

3 回答 3

5

sed解决方案:

sed -ne '/pattern/ p' infile >outfile
于 2012-09-27T14:54:06.920 回答
2

好的,看到这个:

awk '/pattern/' FILE > NEWFILE

更详细 :

awk '/^(DROP|LOCK) .*dx_postings/' file.sql > newfile.sql

如果您有INSERTCREATE语句,这会更加棘手,因为有不止一行。

于 2012-09-27T14:51:25.367 回答
1

这可能对你有用(GNU sed);

sed -n '/pattern/w second_file' first_file
于 2012-09-27T20:50:50.933 回答