
터미널에 "grep doc"를 입력하면 아무 작업도 수행하지 않고 Ctrl+ C또는 escape를 사용할 때까지 터미널이 다른 작업을 수행하지 못하게 됩니다 Z.
나는 이것이 grep을 사용하는 방법이 아니라는 것을 알고 있지만 왜 이런 일이 발생하는지 궁금합니다.
답변1
grep
파일이 제공되지 않으면 기본적으로 표준 입력이 검색됩니다.
grep은 명명된 입력 파일(또는 파일 이름이 지정되지 않은 경우 또는 단일 하이픈 빼기 기호(-)가 파일 이름으로 제공되는 경우 표준 입력)에서 지정된 PATTERN과 일치하는 행을 검색합니다. 기본적으로 grep은 일치하는 줄을 인쇄합니다.
grep을 수행하면 grep doc
stdin이 나타나서 검색할 것으로 예상됩니다( 터미널에서 <
와 사이에 >
입력 하지 마십시오. 주석입니다).
$ 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
[...]