grep이나 다른 도구에서 언제 따옴표를 사용해야 하는지 알고 싶었습니다. 예를 들어 다음 두 명령은 동일한 결과를 제공합니다.
[Jhm@localhost /]$ grep Hello ./testfile
Hello world
[Jhm@localhost /]$ grep "Hello" ./testfile
Hello world
단어가 따옴표 안에 있으면 문제가 되나요?
답변1
단어에 셸에 특별한 의미가 있는 문자가 포함된 경우에만 해당됩니다.
grep "Hello?" ./testfile
Hello?
파일에서 리터럴 문자열을 검색합니다 . 그러나 예를 들어,
grep Hello? ./testfile
현재 디렉토리에 HelloA
파일이 있으면 문자열을 검색합니다 . 왜냐하면 단일 문자를 glob 패턴으로 일치시키기 때문입니다.HelloA
?
나는 당신이 그것에 놀라지 않을 것이라고 생각합니다
grep Hello World ./testfile
그리고
grep "Hello World" ./testfile
다르다.