이 출력이 있습니다
v12: "owner" : "cs1372",
v12: "num-of-connections" : 1,
v12: "owner" : "cq5838",
v5: "owner" : "bb9886",
v5: "owner" : "aq0903",
v5: "owner" : "bj2468",
v5: "owner" : "di3080",
v5: "num-of-connections" : 1,
연결된 행 수보다 높은 행을 반환해야 합니다. 그래서 내가 원하는 출력은
v12: "owner" : "cs1372",
v5: "owner" : "di3080",
sed나 awk를 사용하여 이를 수행하는 쉬운 방법이 있습니까?
답변1
사용 awk
:
$ awk '$2=="\"num-of-connections\""{ print prev } { prev=$0 }' file
v12: "owner" : "cs1372",
v5: "owner" : "di3080",
현재 레코드를 변수에 저장합니다 prev
. 두 번째 필드가 동일하면 "num-of-connections"
변수를 인쇄합니다 prev
.