예를 들어 여러 행과 열이 포함된 파일이 있는 경우 특정 행과 열을 추출할 수 있나요?
예를 들어
1 4/8/2016 4/7/2016 4/6/2016
2 john_doe jane_doe sarah_test
3 26 45 20
4 4/8/2015 6/8/2016 8/26/2016
5 5:15 2:30 6:00
원하는 출력
1 4/8/2016 4/7/2016 4/6/2016
2 john_doe jane_doe sarah_test
4 4/8/2015 6/8/2016 8/26/2016
답변1
예,특정 행과 열을 꺼낼 수 있습니다.
이것은 귀하가 질문한 정확한 답변에 대한 결론입니다.
그러나 몇 가지 일반적인 조언을 드리고자 합니다.
awk
간단한 조건-작업 모델을 기반으로 구축되었습니다.
조건을 제공한 다음 해당 조건과 일치하는 작업을 제공합니다.
조건이 "세 번째 행"이고 작업이 "행의 처음 두 필드 인쇄"라고 가정합니다. 이것은 다음과 같습니다:
awk 'NR==3 {print $1, $2}'
조건이 "라인에 문자 'a'가 포함되어 있음"이고 작업이 "전체 라인 인쇄"라고 가정합니다.
awk '/a/ {print}'
전체 줄을 인쇄하는 것은 일반적인 작업이므로 기본값은 다음과 같습니다.
awk '/a/'
조건이 "각 행"이고 작업이 "두 번째 필드 인쇄"라고 가정합니다. 조건을 생략할 수 있습니다.
awk '{print $2}'
자세한 내용은,올바른 튜토리얼을 읽어보세요.
답변2
awk '$2 ~ /^[abd]$/ { print $2, $3, $4 }'
a
두 번째 필드가 , b
또는 인 행의 경우 d
두 번째, 세 번째 및 네 번째 필드를 인쇄합니다.
선택 기준을 전혀 지정하지 않으셔서 제공해주신 입력과 출력의 차이를 토대로 추측을 해야 했습니다.