열에 특정 값이 있는 행 선택

열에 특정 값이 있는 행 선택

다음은 "example"이라는 파일에 있는 값 중 일부입니다. 행을 하나만 배치했는데 약 천 개가 있습니다.

a  7  q  y  4  5  8  9  5  6  567  5678578  56784  345  345  2  df  4  1  245
b  7  q  y  4  5  8  9  5  6  567  5674578  56789  334  324  3  df  4  1  245

구체적으로, 열 1의 a 또는 b 값은 어떻습니까? 첫 번째 열이 a 또는 b인 나머지 1000개 행에 대해서도 마찬가지입니다. 값이 "a"인 모든 줄이 하나의 파일에 있고 값이 "b"인 모든 줄이 다른 파일에 있도록 줄을 분리하고 싶습니다. 그게 가능합니까?

awk '$1 == a' /home/me/example > /home/me/rowa

나는 성공하지 않고 이것을 시도했지만 이유를 모르겠습니다. 누구든지 이것을 명확히하는 데 도움을 줄 수 있습니까?

답변1

awk 명령을 사용하는 것은 쉽습니다

awk '{print > $1".txt"}' infile.txt

이렇게 하면 첫 번째 열이 "a"만 있는 행을 포함하는 "a.txt" 파일과 첫 번째 열이 "b"만 있는 행을 포함하는 "b.txt" 파일이 생성됩니다(첫 번째 열에 a 또는 b만 포함된 경우).

위는 데이터가 다음과 같이 구분된 경우입니다.상표또는공간, 이것이 다른 경우 awk로 알 수 있습니다 -F"DELIMITER". 여기서 DELIMITER는 파일 필드 구분 기호를 나타냅니다.

관련 정보