필드 구분 기호 사이의 각 값 발생 횟수 추적

필드 구분 기호 사이의 각 값 발생 횟수 추적

파일에서 각 개별 값의 발생 횟수에 대한 정보를 수집하려고 합니다. 값, 즉 전체 파일에서 발생하는 횟수를 출력하고 필드 구분 기호 사이에서 각 값이 발생하는 횟수를 계산하고 싶습니다. "---" 입력:

textfile.txt

산출:

indexed_value - 50 - 12

값을 색인화하고 빈도를 합산하기 위해 [gnu.org의 이 프로그램][1]을 사용하기 시작했지만 더 이상 진행할 수 없습니다.

이전 버전의 mawk를 사용하세요.

awk    '{
        for (i = 1; i <= NF; i++)
            freq[$i]++
    }END {
            for (word in freq)
                printf "%s\t%d\n", word, freq[word]
    }' ./dir/file.txt | sort -f

어느 출력

indexed_value - 50

필드 수 추적의 경우:

awk -F "___" '
{ count[NF]++ }
END{
    for(num in count) 
        printf("%s\t%d\n", num, count[num]) 
}'

산출:

number of fields separated by ---     22
number of new lines                   323

지정된 필드 구분 기호로 구분된 숫자만 있으면 됩니다. 이 두 명령을 하나로 결합하려면 어떻게 해야 합니까?

답변1

다음 변수를 가정합니다.

문자: t

파일명 : 터미널

필드 구분자: p

다음 명령은 mawk를 사용하지 않고 요청한 모든 것을 제공합니다.

echo " t - $(grep -oi t 터미널 | wc -l) - $(grep -it*p 터미널 | wc -l)"

대소문자를 구분하려면 grep 명령에서 "i" 플래그를 제거하십시오.

관련 정보