How do I divide in the Linux console?

2019-02-01 19:51发布

I have to variables and I want to find the value of one divided by the other. What commands should I use to do this?

12条回答
The star\"
2楼-- · 2019-02-01 20:31
echo 5/2 | bc -l

2.50000000000000000000

this '-l' option in 'bc' allows floating results

查看更多
趁早两清
3楼-- · 2019-02-01 20:32

Example of integer division using bash to divide $a by $b:

echo $((a/b))
查看更多
闹够了就滚
4楼-- · 2019-02-01 20:34

I assume that by Linux console you mean Bash.

If X and Y are your variables, $(($X / $Y)) returns what you ask for.

查看更多
Root(大扎)
5楼-- · 2019-02-01 20:35

You can use awk which is a utility/language designed for data extraction

e.g. for 1.2/3.4

>echo 1.2 3.4 | awk '{ print $2/$1 }'
0.352941
查看更多
爷、活的狠高调
6楼-- · 2019-02-01 20:35

I also had the same problem. It's easy to divide integer numbers but decimal numbers are not that easy. if you have 2 numbers like 3.14 and 2.35 and divide the numbers then, the code will be Division=echo 3.14 / 2.35 | bc echo "$Division" the quotes are different. Don't be confused, it's situated just under the esc button on your keyboard. THE ONLY DIFFERENCE IS THE | bc and also here echo works as an operator for the arithmetic calculations in stead of printing. So, I had added echo "$Division" for printing the value. Let me know if it works for you. Thank you.

查看更多
狗以群分
7楼-- · 2019-02-01 20:37

Better way is to use "bc", an arbitrary precision calculator.

variable=$(echo "OPTIONS; OPERATIONS" | bc)

ex:

my_var=$(echo "scale=5; $temp_var/100 + $temp_var2" | bc)

where "scale=5" is accuracy.

man bc 

comes with several usage examples.

查看更多
登录 后发表回答