내 출력은 다음과 같습니다
{tid=4, total=3, column.id=[5.0]}
{tid=2, total=1, column.id=[5.0]}
{tid=5, total=8, column.id=[5.0]}
{tid=8, total=6, column.id=[5.0]}
elapsed time: 10 milliseconds
current time: Thu Sep 15 16:15:30
이 출력 세트는 서로 다른 경과 시간으로 여러 번 반복됩니다. 경과 시간을 나타내는 모든 정수를 추출한 다음 평균 경과 시간을 찾고 싶습니다. 나는 awk를 사용하여 경과 시간을 얻을 수 있다고 생각하지만 여기 구문이 올바른지 확실하지 않습니다.
답변1
항상 밀리초 단위라고 가정하면 이것이 작동합니다.
awk '/^elapsed time:/ {T+=$3;C++}; END {print T/C}' test.txt
/^elapsed time:/
원하는 패턴과 일치하는 라인 찾기
{T+=$3;C++};
up에 세 번째 열을 추가 T
하고 몇 번이나 수행했는지 계산합니다.C
END {print T/C}
우리의 평균을 인쇄해 보세요.