linux shell 不同进制之间转换
2012-03-19 14:15
288 查看
原创:http://297020555.blog.51cto.com/1396304/592030
#!/bin/bash while true do echo "#############################################################" echo "# Author: netcat #" echo "# Lable: jinzhi.sh #" echo "# QQ: 297020555 #" echo "# Create Date: 2011-06-17 #" echo "# Version: v1.0 #" echo "#############################################################" echo "" echo "1 2 ---> 8" #¶þ½øÖÆת»»³É°Ë½øÖÆ echo "2 2 ---> 10" #¶þ½øÖÆת»»³ÉÊ®½øÖÆ echo "3 2 ---> 16" #¶þ½øÖÆת»»³ÉÊ®Áù½øÖÆ echo "4 8 ---> 2" #°Ë½øÖÆת»»³É¶þ½øÖÆ echo "5 8 ---> 10" #°Ë½øÖÆת»»³ÉÊ®½øÖÆ echo "6 8 ---> 16" #°Ë½øÖÆת»»³ÉÊ®Áù½øÖÆ echo "7 10 ---> 2" #Ê®½øÖÆת»»³É¶þ½øÖÆ echo "8 10 ---> 8" #Ê®½øÖÆת»»³É°Ë½øÖÆ echo "9 10 ---> 16" #Ê®½øÖÆת»»³ÉÊ®Áù½øÖÆ echo "10 16 ---> 2" #Ê®Áù½øÖÆת»»³É¶þ½øÖÆ echo "11 16 ---> 8" #Ê®Áù½øÖÆת»»³É°Ë½øÖÆ echo "12 16 ---> 10" #Ê®Áù½øÖÆת»»³ÉÊ®½øÖÆ echo "13 exit" #Í˳ö echo "" echo "enter your select:" #ÊäÈëÑ¡Ôñ read ans #¶ÁÈ¡Ñ¡ÔñµÄÖµ£¬¸³Öµ¸øans case $ans in #¶ÁÈ¡$ansµÄÖµ 1) #Èç¹ûansΪ1ʱ read -p "enter your num:" num #ÊäÈëÄãҪת»»µÄÊý£¬¸³Öµ¸ønum a=`echo $num|tr "[2-9][a-z][A-Z]" "[4-5][A-Z][a-z]"` #¶Ônum½øÐÐÅÐ¶Ï if [ $num != $a ] #Èç¹ûnum²»µÈÓÚa then echo -e "\033[40;31;5m failt \033[0m" #˵Ã÷ÊäÈëµÄnumÖµ²»·ûºÏ¶þ½øÖÆÊýµÄ±ê×¼£¨0ºÍ1£© sleep 2 #Í£¶Ù2s else #·ñÔòµÄ»°£¬num·ûºÏ¶þ½øÖƵıê×¼ result=`echo "obase=8;ibase=2;$num"|bc` #°Ñnumת»»³É°Ë½øÖÆ£¬¸³Öµ¸øresult echo -e "\033[40;32;1m result is \033[40;31;5m $result\033[0m" #Êä³öresultµÄÖµ sleep 4 #Í£¶Ù4s fi ;; 2) read -p "enter your num:" num a=`echo $num|tr "[2-9][a-z][A-Z]" "[4-5][A-Z][a-z]"` if [ $num != $a ] then echo -e "\033[40;31;5m failt \033[0m" sleep 2 else result=`echo "obase=10;ibase=2;$num"|bc` #ÐèҪעÒ⣺obaseÔÚÇ°£¬ibaseÔں󣬲»È»»á³ö´í echo -e "\033[40;32;1m result is \033[40;31;5m $result\033[0m" sleep 4 fi ;; 3) read -p "enter your num:" num a=`echo $num|tr "[2-9][a-z][A-Z]" "[4-5][A-Z][a-z]"` if [ $num != $a ] then echo -e "\033[40;31;5m failt \033[0m" sleep 2 else result=`echo "obase=16;ibase=2;$num"|bc` echo -e "\033[40;32;1m result is \033[40;31;5m $result\033[0m" sleep 4 fi ;; 4) read -p "enter your num:" num a=`echo $num|tr "[8-9][a-z][A-Z]" "[4-5][A-Z][a-z]"` #ÅжÏÊÇ·ñ·ûºÏ°Ë½øÖƱê×¼ if [ $num != $a ] then echo -e "\033[40;31;5m failt \033[0m" sleep 2 else result=`echo "obase=2;ibase=8;$num"|bc` echo -e "\033[40;32;1m result is \033[40;31;5m $result\033[0m" sleep 4 fi ;; 5) read -p "enter your num:" num a=`echo $num|tr "[8-9][a-z][A-Z]" "[4-5][A-Z][a-z]"` if [ $num != $a ] then echo -e "\033[40;31;5m failt \033[0m" sleep 2 else result=`echo "obase=10;ibase=8;$num"|bc` echo -e "\033[40;32;1m result is \033[40;31;5m $result\033[0m" sleep 4 fi ;; 6) read -p "enter your num:" num a=`echo $num|tr "[8-9][a-z][A-Z]" "[4-5][A-Z][a-z]"` if [ $num != $a ] then echo -e "\033[40;31;5m failt \033[0m" sleep 2 else result=`echo "obase=16;ibase=8;$num"|bc` echo -e "\033[40;32;1m result is \033[40;31;5m $result\033[0m" sleep 4 fi ;; 7) read -p "enter your num:" num a=`echo $num|tr "[a-z][A-Z]" "[A-Z][a-z]"` #ÅжÏÊÇ·ñ·ûºÏÊ®½øÖƱê×¼ if [ $num != $a ] then echo -e "\033[40;31;5m failt \033[0m" sleep 2 else result=`echo "obase=2;ibase=10;$num"|bc` echo -e "\033[40;32;1m result is \033[40;31;5m $result\033[0m" sleep 4 fi ;; 8) read -p "enter your num:" num a=`echo $num|tr "[a-z][A-Z]" "[A-Z][a-z]"` if [ $num != $a ] then echo -e "\033[40;31;5m failt \033[0m" sleep 2 else result=`echo "obase=8;ibase=10;$num"|bc` echo -e "\033[40;32;1m result is \033[40;31;5m $result\033[0m" sleep 4 fi ;; 9) read -p "enter your num:" num a=`echo $num|tr "[a-z][A-Z]" "[A-Z][a-z]"` if [ $num != $a ] then echo -e "\033[40;31;5m failt \033[0m" sleep 2 else result=`echo "obase=16;ibase=10;$num"|bc` echo -e "\033[40;32;1m result is \033[40;31;5m $result\033[0m" sleep 4 fi ;; 10) read -p "enter your num:" num a=`echo $num|tr "[g-z]" "[G-Z]"` #ÅжÏÊÇ·ñ·ûºÏÊ®Áù½øÖƱê×¼ if [ $num != $a ] then echo -e "\033[40;31;5m failt \033[0m" sleep 2 else num=`echo $num|tr "[a-f]" "[A-F]"` #²»ÖªµÀΪʲô£¬Ê®Áù½øÖÆÖ»ÊDZð´óд×Öĸ£¬ËùÒÔÔÚÕâ°ÑСдµÄת³É´óд£¬´óдµÄ²»±ä result=`echo "obase=2;ibase=16;$num"|bc` echo -e "\033[40;32;1m result is \033[40;31;5m $result\033[0m" sleep 4 fi ;; 11) read -p "enter your num:" num a=`echo $num|tr "[g-z]" "[G-Z]"` if [ $num != $a ] then echo -e "\033[40;31;5m failt \033[0m" sleep 2 else num=`echo $num|tr "[a-f]" "[A-F]"` result=`echo "obase=8;ibase=16;$num"|bc` echo -e "\033[40;32;1m result is \033[40;31;5m $result\033[0m" sleep 4 fi ;; 12) read -p "enter your num:" num a=`echo $num|tr "[g-z]" "[G-Z]"` if [ $num != $a ] then echo -e "\033[40;31;5m failt \033[0m" sleep 2 else num=`echo $num|tr "[a-f]" "[A-F]"` result=`echo "obase=10;ibase=16;$num"|bc` echo -e "\033[40;32;1m result is \033[40;31;5m $result\033[0m" sleep 4 fi ;; 13) exit ;; *) echo -e "\033[40;31;5m failt \033[0m" sleep 2 ;; esac done
相关文章推荐
- 不同进制之间的转换的各种方法
- C++栈实现不同进制之间转换
- 不同进制之间的转换
- 不同进制之间的转换
- c# 不同进制之间的转换
- 不同进制大数之间的相互转换
- 不同进制、编码之间的转换
- java入门学习笔记,不同进制之间的转换!
- 关于不同进制数之间转换的数学推导【Written By KillerLegend】
- 1.不同进制数之间的相互转换
- 不同进制之间的转换的各种方法
- c# 不同进制之间的转换
- 不同进制之间的转换
- 语言小知识-Java- 不同进制之间的转换
- 不同进制之间的转换
- Java中不同进制的表现形式以及int,char,String之间的转换
- PCL 不同类型的点云之间进行类型转换
- java进制之间的转换
- 36进制与10进制之间的转换
- mysql 10进制与35进制之间的转换 注意Power处理bigint的问题