실험때문에 수많은 txt파일에서 통계자료를 뽑을려니 미치겠군요....
awk를 이용하여 txt 파일 안에서 특정charater로 시작하는 줄을 지울 수 있나요?
예를 들어,
a b c d 1 2 3 4
a b c d 4 3 2 1
에서 a로 시작하는 줄을 모두 지우고 싶습니다.
그리고 가능하면, 아무 내용도 없는 줄도 지우고 싶습니다.
어떻게 하면 될까요?
sed로 검색된 줄 지우는 건 여러 번 나왔으니 찾아보시고,
통계자료니까 줄의 순서가 중요한 건 아닐 테고 아마 헤더 부분이 중간중간 나오나보죠? sort -u나 sort | uniq 정도로 걸러내면 헤더와 자료가 구분될 테니 그걸 지우면 됩니다.
"a로 시작하지 않고 빈 줄이 아니면 출력"이니까 1:1로 번역하면 그냥 잘 됩니다. awk를 진지하게 배워보시는 걸 추천해 드립니다.
!/^a/ && !/^$/ { print }
sort나 uniq, sed를 이용해보세요.
sed로 검색된 줄 지우는 건 여러 번 나왔으니 찾아보시고,
통계자료니까 줄의 순서가 중요한 건 아닐 테고 아마 헤더 부분이 중간중간 나오나보죠?
sort -u나 sort | uniq 정도로 걸러내면 헤더와 자료가 구분될 테니 그걸 지우면 됩니다.
awk
"a로 시작하지 않고 빈 줄이 아니면 출력"이니까 1:1로 번역하면 그냥 잘 됩니다. awk를 진지하게 배워보시는 걸 추천해 드립니다.
!/^a/ && !/^$/ { print }