当我在终端中输入“grep doc”时,它只是不执行任何操作,在我使用Ctrl+C或转义之前阻止终端执行任何其他操作Z。
我知道这不是我应该使用 grep 的方式,但只是好奇为什么会发生这种情况。
答案1
grep
如果没有给出文件,默认情况下搜索标准输入:
grep 搜索命名输入文件(如果没有命名文件,或者如果给出单个连字符减号 (-) 作为文件名,则搜索标准输入)以查找包含与给定 PATTERN 匹配的行。默认情况下,grep 打印匹配的行。
如果您只是执行grep doc
grep 期望标准输入出现并在其中进行搜索(不要在终端之间<
和>
终端中输入部分,这些是注释):
$ grep doc
a b c <PRESS ENTER HERE>
doc <NO MATCH WAS FOUND IN PREVIOUS LINE, TYPE doc AND PRESS ENTER AGAIN>
doc <MATCH WAS FOUND>
答案2
grep
正在等待输入。
从man grep
:
[...]
DESCRIPTION
grep searches the named input FILEs (or standard input if no files are named
[...]