다음과 같은 텍스트 파일이 있다고 가정해 보겠습니다.
group1 hello
group1 there
group1 nice line
group2 here
group2 we
group2 go
내가 하고 싶은 일은 행 그룹이 변경될 때 행을 삽입하는 것입니다. 예를 들면 다음과 같습니다.
group1 hello
group1 there
group1 nice line
---------------------------------------
group2 here
group2 we
group2 go
행이 첫 번째 및/또는 마지막 행으로도 나타나는지는 상관하지 않습니다. 이 시점에서는 정보를 분리할 무언가가 필요합니다.
sed
또는 으로 어떻게 이 작업을 수행할 수 있나요 awk
? 아니면 다른 방법이 있을까요?
답변1
그리고 awk
:
awk 'NR!=1&&x!=$1{print "---"} {x=$1}1' file
NR!=1&&x!=$1
: 첫 번째 행을 제외한 모든 행에 적용하고 첫 번째 필드가 변경되었는지 확인합니다.print "---"
: 그렇다면 대시를 인쇄하세요.{x=$1}
: 다음 반복을 위해 x를 설정합니다.1
awk
: 각 행의 실제 조건을 인쇄합니다.