디렉터리를 큰따옴표로 묶으면 grep이 작동하지 않습니다.

디렉터리를 큰따옴표로 묶으면 grep이 작동하지 않습니다.

내가 이런 일을 할 때 :

grep "hello" /home/paul/*

효과가있다.

하지만 내가 이런 일을 할 때 :

grep "hello" "/home/paul/*"

grep디스플레이 오류:

grep: /home/paul/*: 해당 파일이나 디렉터리가 없습니다.

왜 그런 겁니까?

답변1

Bash 참조 매뉴얼에서:

문자를 큰따옴표('"')로 묶으면 기록 확장이 활성화된 경우 '$', '`', '\' 및 '!'를 제외한 따옴표 안의 모든 문자의 리터럴 값이 유지됩니다.

*따라서 와일드카드로 처리되도록 인용된 문자열에서 특수 문자를 제거해야 합니다 .

grep "hello" "/home/paul/"*

관련 정보