Я пытаюсь подсчитать количество вхождений слова в текстовом файле, используя grep, а затем умножить этот результат (int) на десятичное число, используя bc. Однако в результате получается просто пустое значение (я думаю, пустая строка?).
Способ, которым я подсчитываю вхождения слова в файле, заключается в следующем:
result=$(grep -i -o "$word" $file | wc -l)
а затем я пытаюсь выполнить математику с плавающей запятой с этим результатом через (где value
— десятичное число):
sum="value * ( $result )" | bc
Однако в терминале я просто получаю пустые/пустые строки в результате, никаких значений или чего-то еще. Что я делаю не так?
value
не может быть нецелым числом, здесь нет необходимости вbc
.wc -l
будет выводить только целые числа. - person chepner   schedule 15.10.2017value
может быть нецелым, поэтому я пытался использоватьbc
, так как я считаю, что bash сам по себе может выполнять только целочисленную арифметику. - person Yuerno   schedule 15.10.2017bc
. - person chepner   schedule 15.10.2017