Grep 在我使用 is with时有效ls |
,但当我自己尝试命令时,它只会给我一个闪烁的光标,在下一行永远不会消失(就像它正在运行命令一样)。
例如,我试过:
ls | grep zip
虽然在bin
目录中并获得了文件列表,但grep zip
在同一个目录中的平原给了我上述问题。
Grep 在我使用 is with时有效ls |
,但当我自己尝试命令时,它只会给我一个闪烁的光标,在下一行永远不会消失(就像它正在运行命令一样)。
例如,我试过:
ls | grep zip
虽然在bin
目录中并获得了文件列表,但grep zip
在同一个目录中的平原给了我上述问题。
来自
man grep
(强调我的):如果您在
grep
没有文件名或管道(|
inls | grep
)的情况下运行:标准输入是终端——即你。您必须提供
grep
将搜索的输入。grep
将一个文件或(文件)作为其输入,当没有给出文件名时,grep
从标准输入(文件描述符 0)读取。当您这样做时
ls | grep 'something'
,您正在通过管道将ls
命令的标准输出重定向到grep
标准输入(就是这样|
做的)。而在后一种情况下,当您只是这样做时
grep 'something'
,没有给出文件名,因此grep
将读取其 STDIN 以进行输入,这里不涉及管道,因此您需要在 STDIN(提供输入)上键入一些内容以查看输出。例子:
正如您从我输入的内容中看到的那样,并在 STDOUT 上显示了它
grep
。46
顺便说一句,要关闭交互式输入会话,请按Ctrl+D表示 EOF(文件结束)(在这种情况下,将其读作“输入结束”)。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/ 谢谢。