newdump.s-6ren">
gpt4 book ai didi

sql - 从 SQL 文件中 grep 一个句子

转载 作者:行者123 更新时间:2023-12-04 19:17:26 27 4
gpt4 key购买 nike

我有一个非常大的 SQL 文件,想从文件中提取一个创建语句。我使用的命令是;

cat dbdump.sql |grep "CREATE TABLE site_summaries" >newdump.sql

这种方法的问题是 statemtn 分布在几行上,而 grep 只返回第一行。如何继续 grep 直到到达表示语句结束的分号?

最佳答案

首先,你的命令有“猫的无用用法”,下次就做grep '...' file不是 cat file|grep...
grep 进行逐行检查。您可以使用 awk 轻松实现:

awk -v RS=';' '/CREATE TABLE site_summaries/' foo.sql

做了一个小测试:
kent$  cat f
foo
bar;
this that;
CREATE TABLE site_summaries
whatever
else you need;
trash here....;

kent$ awk -v RS=';' '/CREATE TABLE site_summaries/' f

CREATE TABLE site_summaries
whatever
else you need

如果你想要 ;仍然在您提取的文本的末尾,取这个:
awk -v RS=';' -v ORS=";\n" '/CREATE TABLE site_summaries/' file

关于sql - 从 SQL 文件中 grep 一个句子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32358401/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com