原创: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