0

如何查找包含大于号或小于号的行?

以下 grep 命令不返回任何内容:

grep "<\|>" sdiff.out

然而,一次仅针对其中一个标志的 Grepping 确实会从文件中返回数据。该文件包含 sdiff 命令的输出。

所有这些的目的是只查看两个文件之间不同的实际行。

谢谢你的任何提示。

4

2 回答 2

3

在 grep 中使用-P或选项与字符类中的符号,-E><

grep -P '[><]' file

或者

grep -E '[><]' file

例子:

$ cat file
chr -   xyz ordered_A01 5480    6144>
chr -   xyz ordered_A01 5480    58001
rm -rf ~/Desktop/-r <

$ grep -P '[><]' file
chr -   xyz ordered_A01 5480    6144>
rm -rf ~/Desktop/-r <

$ grep -E '[><]' file
chr -   xyz ordered_A01 5480    6144>
rm -rf ~/Desktop/-r <
于 2014-06-12T09:09:37.990 回答
0

该表达式grep "<\|>" sdiff.out应该有效。无论如何,您可以使用-E以下方式定义不同的模式来获得相同的行为|

grep -E '<|>' file

测试

$ cat a
hello < i am
here > and this
is a test
blabla <> iea

$ grep -E '<|>' a
hello < i am
here > and this
blabla <> iea
于 2014-06-12T09:08:25.403 回答