【发布时间】:2017-10-15 15:53:02
【问题描述】:
我正在尝试使用 grep 计算文本文件中某个单词的出现次数,然后使用 bc 将该结果(整数)与小数相乘。但是,结果只是一个空白值(我猜是空字符串?)。
我计算文件中单词出现次数的方式是:
result=$(grep -i -o "$word" $file | wc -l)
然后我尝试通过(value 是小数)对该结果进行浮点数学运算:
sum="value * ( $result )" | bc
但是在终端中,我只得到空白/空行作为结果,没有值或任何东西。我做错了什么?
【问题讨论】:
-
除非
value可以是非整数,否则这里不需要bc。wc -l只会输出整数。 -
@chepner
value可以是非整数,这就是我尝试使用bc的原因,因为我相信 bash 本身只能进行整数运算 -
正确;我只是想明确这一点,因为一个答案建议用算术表达式代替
bc。 -
在主要问题中更清楚地说明了这一点,谢谢!