【问题标题】:Search a file in linux and jump to position of the first find在linux中搜索一个文件并跳转到第一个find的位置
【发布时间】:2014-03-15 06:50:15
【问题描述】:

我需要有关 linux 命令的帮助,我可以使用该命令在文本文件中搜索字符串并转到找到该字符串的第一个位置,并能够从那里向下和向上滚动。 我正在为这样的命令寻找几个小时。 GREP 只会找到匹配项,打印它们并退出文件。我需要能够跳转到该行并能够上下滚动才能看到周围的其他行。

【问题讨论】:

  • 您是否需要可以直接从命令行运行的东西,或者是否可以先打开文件,例如在vi中
  • 您的问题不清楚,您应该尝试解释您尝试使用此类功能的方式和位置,这将有助于我们回答问题?
  • 我会澄清一下,我正在寻找一些可以从命令行运行的命令。喜欢 LESS file.txt | grep "someword" 或 grep "string" file.txt 但会让我像 LESS 命令一样留在打开的文件中并上下滚动。我希望这可以清除它:-)

标签: linux string file search


【解决方案1】:

您可以使用less 或vim 执行此操作,例如:

less +/pattern file.txt
vim +/pattern file.txt

这将打开file.txt 进行编辑并跳转到“pattern”的第一个匹配项(如果存在)。您可以使用箭头键或j 和k 向上或向下移动。

该模式可以是 less 和 vim 理解的基本正则表达式 (BRE)。例如:

less +/^settings file.txt
vim +/^settings file.txt

这将跳转到以字符串“settings”开头的第一行。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-02-28
    • 1970-01-01
    • 2012-10-04
    • 1970-01-01
    • 2021-02-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多