Bash 질문: 테이블에서 n 행의 합계를 가져옵니다.

Bash 질문: 테이블에서 n 행의 합계를 가져옵니다.

나는 이것을 가지고있다:

470 teste/teste1/teste2
202 teste/teste1
135 teste
299 teste

보시다시피 마지막 두 행과 두 열은 동일합니다. 내가 원하는 것은 2개 열의 각 행을 살펴보고 동일한 행이 있으면 디렉터리에 있는 모든 행의 크기를 추가하는 명령입니다.

기본적으로 나는 이것을 원한다:

(내 경우에는 2개의 동일한 행만 있지만 n개의 행이 필요합니다.)

470 teste/teste1/teste2
202 teste/teste1
434 teste

답변1

awk를 사용하세요:

awk '{ a[$2]+=$1 } END{ for(i in a) print a[i],i }' file

산출:

434화
470 테스트/테스트1/테스트2
202 테스트/테스트1

관련 정보