AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / ubuntu / 问题 / 726076
Accepted
thinksinbinary
thinksinbinary
Asked: 2016-01-27 17:19:53 +0800 CST2016-01-27 17:19:53 +0800 CST 2016-01-27 17:19:53 +0800 CST

我的 grep 命令有什么问题?

  • 772

Grep 在我使用 is with时有效ls |,但当我自己尝试命令时,它只会给我一个闪烁的光标,在下一行永远不会消失(就像它正在运行命令一样)。

例如,我试过:

ls | grep zip

虽然在bin目录中并获得了文件列表,但grep zip在同一个目录中的平原给了我上述问题。

grep
  • 3 3 个回答
  • 10844 Views

3 个回答

  • Voted
  1. Best Answer
    muru
    2016-01-27T17:29:00+08:002016-01-27T17:29:00+08:00

    来自man grep(强调我的):

    grep  searches the named input FILEs (or standard input if no files are
    named, or if a single hyphen-minus (-) is given as file name) for lines
    containing  a  match to the given PATTERN.  By default, grep prints the
    matching lines.
    

    如果您在grep没有文件名或管道(|in ls | grep)的情况下运行:

    grep foo
    

    标准输入是终端——即你。您必须提供grep将搜索的输入。

    $ grep foo
    this is me typing stuff
    now I'm typing foo, which will get printed again because grep matched foo     
    now I'm typing foo, which will get printed again because grep matched foo
    
    • 4
  2. heemayl
    2016-01-27T17:32:36+08:002016-01-27T17:32:36+08:00

    grep将一个文件或(文件)作为其输入,当没有给出文件名时,grep从标准输入(文件描述符 0)读取。

    当您这样做时ls | grep 'something',您正在通过管道将ls命令的标准输出重定向到grep标准输入(就是这样|做的)。

    而在后一种情况下,当您只是这样做时grep 'something',没有给出文件名,因此grep将读取其 STDIN 以进行输入,这里不涉及管道,因此您需要在 STDIN(提供输入)上键入一些内容以查看输出。

    例子:

    % grep 46
    245
    480
    460
    460
    

    正如您从我输入的内容中看到的那样,并在 STDOUT 上显示了它grep。46顺便说一句,要关闭交互式输入会话,请按Ctrl+D表示 EOF(文件结束)(在这种情况下,将其读作“输入结束”)。

    • 2
  3. Osanda Rajapakse
    2019-10-27T22:33:31+08:002019-10-27T22:33:31+08:00

    grep 不用于在 linux 中查找文件。您可以使用 find 命令来搜索文件。grep 命令可用于搜索文件内的文本。

    如果要在 /bin 目录中查找名为 zip 的文件,请使用以下查找命令 find /bin -name " zip "

    我在前面和结尾都使用了 *,因为那里的文件可以是 gunzip、bzip、gzip。因此,要搜索所有与我使用的 zip 词匹配的内容 *.

    请阅读以下两篇关于如何分别使用 grep 命令和 find 命令的文章。它会更有用。 https://screwlinux.com/how-to-use-grep-command-in-linux/ https://screwlinux.com/find-command-in-linux-with-examples/ 谢谢。

    • 0

相关问题

  • 如何让 grep 只显示匹配的正则表达式?

  • 如何 grep 字符串变量的内容?

  • 拖尾两个日志文件

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何运行 .sh 脚本?

    • 16 个回答
  • Marko Smith

    如何安装 .tar.gz(或 .tar.bz2)文件?

    • 14 个回答
  • Marko Smith

    如何列出所有已安装的软件包

    • 24 个回答
  • Marko Smith

    无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗?

    • 25 个回答
  • Martin Hope
    Flimm 如何在没有 sudo 的情况下使用 docker? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    Ivan 如何列出所有已安装的软件包 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    La Ode Adam Saputra 无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗? 2010-11-30 18:12:48 +0800 CST
  • Martin Hope
    David Barry 如何从命令行确定目录(文件夹)的总大小? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher “以下软件包已被保留:”为什么以及如何解决? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford 如何删除 PPA? 2010-07-30 01:09:42 +0800 CST

热门标签

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve