2

我正在尝试通过大量旧 AS/400 代码(CL、COBOL 等)进行 grep。在某些情况下,命令会用+符号“包装”到下一行。您实际上可以在标识符中间有一个中断,然后在下一行继续。

例如:

SELECT * FROM LIBR+
ARY/FILE

但是同样的代码可以这样写(这个中断可以在任何地方):

SELECT * FROM LI+
BRARY/FILE

在这种情况下,我希望使用 grep'LIBRARY\/'来查找该标识符。

使用正则表达式忽略换行符很容易,但是我该如何忽略+呢?

4

2 回答 2

0

sed使用and的一种方法grep

< file.txt sed ':a;N;$!ba; s/+\n//g' | grep "LIBRARY/"
于 2012-08-02T22:56:00.963 回答
0

如果您可以忽略新行,则可以忽略加号后跟新行;)考虑将加号转义为正则表达式字符。

于 2012-08-02T19:57:29.290 回答