grep을 사용하여 문자열을 특수 문자 및 정확한 일치와 일치시킵니다.

grep을 사용하여 문자열을 특수 문자 및 정확한 일치와 일치시킵니다.

대용량 파일이 있는데 특정 문자열만 검색하고 싶습니다. 예를 들어. mobNo='xxx-xxx-xxxx' 이 형식에는 많은 로프가 있습니다.

나는 노력하고 있습니다 grep "mobNo=\'*\'". 누구든지 나를 도울 수 있습니까? 미리 감사드립니다.

업데이트 #1

나는 또한 grep "mobNo='[^']*'"파일과 grep -io "mobNo='[^']*'"파일을 시도했지만 둘 다 결과를 얻지 못했습니다.

답변1

큰따옴표로 묶인 경우 작은따옴표를 이스케이프할 필요가 없습니다.

grep "mobNo='[^']*'" file

또한 grep쉘 패턴(글로브) 대신 정규식을 사용하십시오. 셸에서는 *0개 이상의 문자와 일치합니다. 그러나 정규식에서는 *앞의 문자 중 0개 이상이 일치합니다. 여기서 [^']*which는 작은따옴표가 아닌 0개 이상의 문자를 의미하는 데 사용됩니다 .

관련 정보