相关疑难解决方法(0)

如何使用多个AND模式运行grep?

我想通过模式之间的隐式AND获得多模式匹配,即相当于在一个序列中运行几个 grep:

grep pattern1 | grep pattern2 | ...
Run Code Online (Sandbox Code Playgroud)

那么如何将其转换为类似的东西?

grep pattern1 & pattern2 & pattern3
Run Code Online (Sandbox Code Playgroud)

我想使用单个 grep,因为我正在动态构建参数,因此所有内容都必须放在一个字符串中。使用过滤器是系统特性,而不是 grep,所以它不是它的论据。


不要将此问题与:

grep "pattern1\|pattern2\|..."
Run Code Online (Sandbox Code Playgroud)

这是一个OR多模式匹配。

grep regular-expression

117
推荐指数
5
解决办法
26万
查看次数

Grep:如何添加“或”条件?

如何将条件 OR 引入 grep?例如,为(JPEG 或 JPG)搜索文件类型,然后仅将这些文件发送到照片文件夹中。例如。我知道如何将文件发送到我想要的位置,并获取文件类型,我只需要 grep 部分的一些帮助。

我在 OS X 上,IMO 似乎已经修改/定制了 *nix 实用程序,而不是我在 *nix 环境中习惯的。所以希望答案可以尽可能通用/便携。

grep

55
推荐指数
5
解决办法
10万
查看次数

我怎样才能在文件中搜索这个或那个(2 件事)?

我有一个包含“then”和“there”的文件。

我可以

$ grep "then " x.x
x and then some
x and then some
x and then some
x and then some
Run Code Online (Sandbox Code Playgroud)

我可以

$ grep "there " x.x
If there is no blob none some will be created
Run Code Online (Sandbox Code Playgroud)

如何在一次操作中同时搜索两者?我试过

$ grep (then|there) x.x
Run Code Online (Sandbox Code Playgroud)

-bash: 意外标记附近的语法错误`('

和

grep "(then|there)" x.x
durrantm.../code
# (Nothing)
Run Code Online (Sandbox Code Playgroud)

grep regular-expression

55
推荐指数
2
解决办法
8万
查看次数

如何使用 Unix 命令打印包含汉字的行或包含 ### 的行?

我有一个文本文件,我想使用 Unix 命令(我不关心哪个)来打印包含中文字符或包含字符串 ### 的行。

\n

这个答案有一个 grep 命令,可以打印出包含汉字的行

\n
grep -P \'[\\p{Han}]\' filename.txt\n
Run Code Online (Sandbox Code Playgroud)\n

我理解这是一个 Perl 正则表达式。这会打印出包含 ### 的行:

\n
grep \'###\' filename.txt\n
Run Code Online (Sandbox Code Playgroud)\n

但我不知道如何组合(或)它们。如果我grep -e \'###\' -P \'[\\p{Han}]\'按照我的预期,这个答案会概括,它不会打印出包含汉字的行。

\n

问题:如何使用 Unix 命令打印包含汉字的行或包含 ### 的行?

\n

哦,万一有帮助,如果文件包含

\n
\xe4\xb8\xad\xe6\x96\x87 keep this line\n### keep this line\ndon\'t keep this line\n
Run Code Online (Sandbox Code Playgroud)\n

它应该输出

\n
\xe4\xb8\xad\xe6\x96\x87 keep this line\n### keep this line\n
Run Code Online (Sandbox Code Playgroud)\n

grep text-processing

4
推荐指数
2
解决办法
1649
查看次数

使用 grep 或

如何使用 grep 在文本文件中搜索单词或其他单词的出现?

我想过滤所有行的 apache 日志文件,包括“bot”或“spider”

cat /var/log/apache2/access.log|grep -i spider
Run Code Online (Sandbox Code Playgroud)

只显示包含“spider”的行,但如何添加“bot”?

grep bash filter regular-expression

0
推荐指数
1
解决办法
1734
查看次数

标签 统计

grep ×5

regular-expression ×3

bash ×1

filter ×1

text-processing ×1