결과를 찾기 위한 데이터에 대한 grep unix

결과를 찾기 위한 데이터에 대한 grep unix

많은 양의 데이터가 포함된 파일이 있습니다. 예를 들어 "COST->1.00"이라는 줄이 있습니다. 예를 들어 1.00에서 100 사이의 값을 grep하고 싶습니다. 여기에는 정수 및 문자열 문자가 포함됩니다. 이 데이터를 어떻게 파악해야 합니까?

감사해요.

답변1

패턴의 첫 번째 부분을 일치시킬 수 있습니다

grep "COST -> 1" hugedatafile.txt


그러나 이는 COST -> 143 항목 과도 ​​일치합니다.

그래서 우리는 좀 생각해 볼 필요가 있어요

grep -e "[1-9]\.|[1-9][0-9]\.[0-9]|100" hugedatafile.txt

"|"는 grep을 확장하는 "or" 스위치입니다. 여기서는 3가지 조건을 테스트했습니다. 1.0~9(소수점 관계 없음) 사이의 숫자 또는 10.0~99(소수점 관계 없음) 또는 100 사이의 숫자가 일치됩니다. 확장 grep은 모든 배포판에서 사용 가능하지 않을 수 있으므로 상황이 다를 수 있습니다.

관련 정보