Частота подсчета длины слова с Linux командами - PullRequest
0 голосов
/ 04 февраля 2020

Я хочу получить подсчет частоты для длин слов (test.txt - это список слов). Код ниже должен вычислить количество слов разной длины, а затем добавить результат; повторяйте, пока не достигнете общего количества слов в файле. Проблема заключается в присвоении переменной cur, которая должна хранить выходные данные операции канала (grep | wc -w). Как только это утверждение достигнуто, cur:command not found появляется на терминале. Я использую Cygwin. Как я могу заставить это работать?

enter image description here

#!/bin/bash

a=($(wc test.txt))
filename=$dir/freq.txt
touch $filename

words=${a[1]} #words variable stores the total number of words in test.txt file
total=0 
count=1 #first check the number of words of length 1

while [ "$total" -ne "$words" ] #terminate once total equals words
do
    cur = $(grep -o -w "\w\{$count\}" male-first.txt | wc -w) #number of words of length count
    echo "$count: $cur"
    let count++ #increment count
    let total=total+cur #add number of words of length count to total
done

echo "Done"

1 Ответ

3 голосов
/ 04 февраля 2020

Не допускайте пробелов вокруг заданий:

cur=$(grep...
...