Linux Shell脚本语言与数学表达式(1)(3)
接下来是另一个脚本,功能与上述脚本恰恰相反,即将二进制值转成十进制。
脚本3:BinaryToDecimal.sh
#!/bin/bash echo "Enter a number :" read Binary if [ $Binary -eq 0 ] then echo "Enter a valid number " else while [ $Binary -ne 0 ] do Bnumber=$Binary Decimal=0 power=1 while [ $Binary -ne 0 ] do rem=$(expr $Binary % 10 ) Decimal=$((Decimal+(rem*power))) power=$((power*2)) Binary=$(expr $Binary / 10) done echo " $Decimal" done fi
示例输出
[root@tecmint ~]# chmod 755 Binary2Decimal.sh [root@tecmint ~]# ./Binary2Decimal.sh Enter a number : 11 3
注意:上述功能在终端也能用“bc”命令达成,如下,
[root@tecmint ~]# echo "ibase=2; BINARY" | bc
BINARY是你想转换的二进制数,例如,
[root@tecmint ~]# echo "ibase=2; 11010101" | bc 213
下载BinaryToDecimal.sh
评论暂时关闭