regex - 使用正则表达式 Grep 多个文件以指定要搜索的文件名

标签 regex linux bash grep

假设我有 n 文件,其名称类似于 link123.txtlink345.txtlink645.txt

我想对这些 n 文件的子集进行 grep 搜索以获得关键字。例如:

grep 'searchtext' link123.txt link 345.txt ...

我想做类似的事情

grep 'searchtext' link[123\|345].txt

在这种情况下,如何将文件名提及为正则表达式?

最佳答案

你可以像这样一起使用findgrep

find . -regex '.*/link\(123\|345\).txt' -exec grep 'searchtext' {} \;

感谢 ghoti 的评论。

关于regex - 使用正则表达式 Grep 多个文件以指定要搜索的文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46437781/

相关文章:

linux - 脚本中的文件名最后修改日期 shell

bash- 获取两个文件中具有相同列值的所有行

linux - 如何暂时隐藏正在运行的 bash 脚本的输出?

javascript - Javascript正则表达式

javascript - 如何创建一个正则表达式来验证带有 3 个点或破折号的 id

javascript - 无法在 Javascript 中创建 RegExp 项目

python - 很好的正则表达式,用于清理 Python 中的空格分隔数字

android - AOSP 午餐错误的目标

linux - cdev_add 和 device_create 函数之间的区别?

bash - 如何从单个控制台在 20 多个站点上运行测试?