我试图在WHERE和GROUP之间获取一些SQL代码中的所有行,我有下面的内容,这让我第一次出现在WHERE和GROUP之间的文本,但是在我之后有多次出现相同的
awk '/WHERE/{p=1} p; /GROUP/{exit}' filename.txt
输出
WHERE something
Some SQL code
GROUP BY something
代码的多个部分以WHERE开头,以我想要输出的文件结束GROUP BY
有人可以帮忙吗?
答案 0 :(得分:2)
contextMenuHolder
最好在这些方面做点什么:
awk
awk '/WHERE/{f=1} f; /GROUP/{f=0}' file
范围运算符awk
与,
的工作方式类似。但是,很难修改并限制awk可以执行的操作。
一旦你的awk习惯包括使用标志(而不是范围),就会更容易在标记之间打印,例如:
sed
使用范围运算符是不可能的。
答案 1 :(得分:-1)
awk '/WHERE/,/GROUP/' filename.txt