Grep 검색은 고유한 행을 반환합니다.

Grep 검색은 고유한 행을 반환합니다.

이것은 내 grep 검색입니다.

 grep 'Invoker_Slark*' true_pairscore.txt

하지만 해당 행을 반환합니다 Invoker_Slardar. 파일에 Invoker_Slark.

답변1

Invoker_Slark*그 이유는 정규 표현식으로 간주되기 때문입니다 . 즉 k*, "k는 0회 이상 발생합니다"를 의미합니다.

*이는 0개 이상의 문자를 나타내는 쉘 와일드카드 패턴과 다릅니다 .

Invoker_Slark줄의 아무 곳이나 검색하려면 다음을 수행해야 합니다.

  1. grep 'Invoker_Slark' true_pairscore.txt또는

  2. grep -x '.*Invoker_Slark.*' true_pairscore.txt

검색 문자열이 줄의 시작 부분에 있어야 하는 경우 다음과 같이 변경해야 합니다.

  1. grep '^Invoker_Slark' true_pairscore.txt또는

  2. grep -x 'Invoker_Slark.*' true_pairscore.txt

관련 정보