tacacs 파일의 일부를 월별 보고서로 출력하려고 합니다.
Python으로 시도해 보았지만 여전히 결과에 오류가 있으므로 간단한 bash 스크립트에 우아한 해결책이 있는지 알아보려고 했습니다.
파일에서 꺼내고 싶은 비트는 다음과 같습니다.
user = user1 {
member = group2
}
user = user2 {
member = group3
}
이제 이상적으로 내가 원하는 것은 group2에 속한 모든 구성원이 자신이 속한 그룹의 이름과 함께 한 열과 다른 열로 출력되는 것입니다.
월별 이메일 부분은 제가 처리할 수 있는데, 출력에 문제가 있는 것뿐입니다.
어떤 아이디어가 있나요?
답변1
$ awk '/user =/ { u = $3 } /member =/ { print u, $3 }' file
user1 group2
user2 group3
일치하는 행을 찾으면 user =
사용자 이름이 기억됩니다(공백으로 구분된 세 번째 필드에서 가져옴). 일치하는 행을 찾으면 member =
기억된 사용자 이름과 행의 세 번째 필드(그룹 이름이어야 함)를 출력합니다.
나는 파일 형식에 익숙하지 않고 파일에 다른 내용이 무엇인지 전혀 모르기 때문에 이것이 질문에 제공된 다른 데이터에 적용된다고 말할 수 없습니다.