$ bc <<< 5*4 20
$ bc <<< 5+4 9
$ bc <<< 5-4 1
$ echo "5*4" | bc 20
$ echo "5+4" | bc 9
$ echo "5-4" | bc 1
$ cat calcFile 5+5 6+7
$ bc < calcFile 10 13
Q2. Can I use the result of last calculation within the same expression that is passed to bc?
$ echo "5-4;last+6" | bc 1 7
NOTE – You can also use a dot (.) instead of the variable name ‘last’. Here is an example :
$ echo "5-4;.+6" | bc 1 7 $ echo "sqrt(10)" | bc 3 $ echo "scale=1;sqrt(10)" | bc 3.1 $ echo "scale=10;sqrt(10)" | bc 3.1622776601
→ Convert decimal to hexadecimal
$ echo 'obase=16;128' | bc 80
→ Convert hexadecimal to decimal
$ echo 'ibase=16;obase=A;80' | bc 128
→ Convert binary to decimal
$ echo 'ibase=2;obase=A;10000000' | bc 128