从文件开头开始 grep (grep -f )

2024-06-03

I use commands | grep -f - file从文件中提取管道内容。
但是,我只想在匹配字符串位于行开头时才提取。通常我使用grep '^string',但它不适用于grep -f.

grep -f '^-' file
grep: ^-: No such file or directory

我该如何使用grep -f - and grep '^'一起?


grep -f用于包含模式的文件。

你不能打电话grep -f '^-'因为它不会采取'^-'作为模式,但作为文件名

如果不想使用文件,可以使用管道

grep -f -,其中-是获取标准输入/管道而不是文件的信号。

这是一个例子

echo ^a | grep -f - file.txt是相同的grep '^a' file.txt

更好的用法是仅从某些文件中获取一些模式,并将该模式​​用于您的文件

grep '^PAT' patterns.txt | grep -f - myfile

这将从文件 Patterns.txt 中获取以 PAT 开头的所有模式,并使用下一个 grep 中的此模式在 myfile 中进行搜索。

因此,您可以在文件 Patterns.txt 中包含字典,并使用它在 myfile 文件中进行搜索。

如果您有某种字典(文件中的字符串列表,以换行符分隔)并希望将其用作在行开头包含字符串的模式,并且您没有^在字典中,你可以使用 sed

grep '^abc' dict.txt | sed 's/^/^/g' | grep -f - myfile

所以,给定文件 dict.txt

a
abc
abcd
fbdf

首先 grep 获取“abc”和“abcd”,并在它们前面加上前缀^

并调用类似的东西grep -e '^abc' -e '^abcd' myfile

注意^abcd是一个子集^abc。所以你的字符串末尾可能会有一个空格(或另一个分隔符)

grep '^abc' dict.txt | sed 's/^/^/;s/$/\ /' | grep -f - myfile

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从文件开头开始 grep (grep -f ) 的相关文章

随机推荐

  • 如何使用 console.log 省略文件/行号

    如今 您可以在 Chrome 的控制台中编写非常好的东西 查看this https developer chrome com devtools docs tips and tricks关联 我也做了一个截图 正如您在屏幕截图中看到的那样 文
  • Jeditable 错误时异步恢复

    我一直在使用 JQuery 的 JEditable 插件 我想向插件返回错误以指示它恢复到以前的值并向用户显示错误 我使用同步 ajax 调用来完成此工作 但我更喜欢使用异步回调 我必须到目前为止的代码如下 editbox editable
  • PHP登录然后重定向

    我使用以下代码将用户登录到一系列安全页面 我需要将每个用户在提交后重定向到适当的页面 我想知道需要采取哪些步骤来选出三个登录级别 管理员 特殊 用户 if isset SESSION username function check logi
  • 好的实体框架示例应用程序? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在寻找一些使用实体框架的优秀 asp net 示例应用程序 我看到了几个 NorthWind 应用
  • 图中使用 K 个反向边的所有最短路径

    假设我有一个有向图 G V E 其边的权重为正整数 我需要做的是使用最多 K 整数 个反向边找到所有顶点之间的最短路径 我的意思是 如果我们在边 u 处 并且只有一条从 v 到 u 的有向边 只要我们没有在这条路径上使用 K 个反向边 我们
  • Python 3.4.3 tkinter - 程序在声明 IntVar 或任何其他 tkinter 数据类型时冻结

    上一主题 Python 3 4 tkinter checkbutton变量处理不起作用 响应 https stackoverflow com questions 33711472 python 3 4 tkinter checkbutton
  • SwingWorker 在 Unsafe.park() 处挂起

    我有一个SwingWorker与后台服务器通信 然后更新JFrame 我正在调试我的应用程序并注意到即使在SwingWorker完成了它的工作 它的线程仍然存在 它挂在Unsafe park java lang Object 这是一个本机方
  • 在 Matlab 中保存当前运行的脚本

    有没有办法保存Matlab中当前运行的脚本 我有一个脚本 它会自动备份一组脚本 但如果我更改了当前脚本 则保存的版本将过期 也许可以调用一些java Thanks 在 Yair Altman 网站上的某个地方 请参阅我的其他答案中的链接 他
  • 如何在Javascript中声明静态变量[重复]

    这个问题在这里已经有答案了 在下面的代码中 我希望有一个计数器来跟踪创建的 Person 对象的数量 这段代码没有这样做 我该如何实现呢 function Person this name Peter this counter this c
  • 在 Python 3.6 中,为什么负数的分数次方在 numpy 数组中返回 nan?

    我最近开始学习Python 并且经历了NumPy 官方快速入门指南 https docs scipy org doc numpy dev user quickstart html indexing slicing and iterating
  • 枚举的 clang-format 样式选项

    有谁知道如何配置 clang format 以将枚举保留在单独的行上 i e enum ONE TOW THREE vs enum ONE TWO THREE EDIT 以下是我用来匹配 Apple 的 Objective C 风格指南的风
  • 提交表单时显示警告框

    所以我有这两页 pageOne php and pageTwo php 表格在pageOne php
  • VS Code 扩展:如何为扩展的设置/配置设置顺序/优先级?

    将设置 配置添加到 contributes 和 configuration 下的扩展 package json 文件时 无论我放置它们的顺序如何 它们都会出现在 文件 中 偏好设置 设置 我的扩展 按字母顺序排列 并非所有信息都符合按字母顺
  • Ajax 调用后使用 Django 模板呈现 JSON 对象

    我一直在尝试了解什么是最佳方法Ajax http en wikipedia org wiki Ajax 28programming 29 in Django http en wikipedia org wiki Django 28web f
  • 如何使用Flyway插入CLOB/BLOB数据?

    我的要求是使用 Flyway 工具通过插入脚本插入 CLOB BLOB 数据 我无法找到任何东西来实现这一目标 所以有人可以指导我如何实现这一目标吗 我们需要插入 XML 文件 作为 blob 因此 让脚本以两种方式在 Oracle Fly
  • 如何有效地将大字符串添加到文本框?

    我有一个巨大的字符串 我们所说的长度为 1696108 个字符 我已经从文本文件中快速读取了它 当我将其添加到文本框 C 时 需要很长时间才能完成 像 Notepad 这样的程序 我知道非托管代码 几乎可以立即完成 尽管 Notepad 也
  • UISlider 的自定义 UIImage 设置为 UIImageRenderingModeAlwaysTemplate

    我正在尝试自定义外观UISlider通过为拇指 minimumTrack 和 MaximumTrack 设置自定义图像 如下所示 let sliderThumbImage UIImage named slider thumb volumeS
  • @interface 中的 Objective-c 特定 iOS 版本

    我正在尝试实现Apple Pay 并且我尝试实现两种方法 一种用于iOS10 一种用于iOS11 所以在我的实现中我有 void paymentAuthorizationViewController PKPaymentAuthorizati
  • 如何将最新的 Windows SDK 版本传递给 CMake?

    如何将最新的 Windows SDK 版本传递给 CMake 这样我就不需要进入 Visual Studio 并从配置属性 常规中手动放置它 我在互联网上搜索 找到了 CMAKE SYSTEM VERSION 变量 并且尝试使用 set C
  • 从文件开头开始 grep (grep -f )

    I use commands grep f file从文件中提取管道内容 但是 我只想在匹配字符串位于行开头时才提取 通常我使用grep string 但它不适用于grep f grep f file grep No such file o