conversor de bases no shell
Publicado por gabriel 29/08/2008
[ Hits: 7.291 ]
Meu primeiro conversor de base.
#!/bin/bash Principal() { echo "=====================================" echo "| 1) entrada de numeros binarios |" echo "| 2) entrada de numeros decimais |" echo "| 3) entrada de numeros octais |" echo "| 4) entrada de numeros hexadecimais|" echo "=====================================" echo "opcao:" read OPCAO case $OPCAO in 1)Entrada_binario ;; 2)Entrada_decimal ;; 3)Entrada_octal ;; 4)Entrada_hexadecimal ;; *)Principal ;; esac } Entrada_binario() { clear echo "============================" echo "| digite um numero binario |" echo "============================" read NUM2 echo "" clear echo "=================================" echo "| 1) Converter para decimal |" echo "| 2) Converter para hexadecimal |" echo "| 3) Converter para octal |" echo "| *) aperte qualquer tecla para |" echo "| voltar ao menu iniciar |" echo "=================================" echo "opcao: " read OPCAO2 case $OPCAO2 in 1)Saida_decimal ;; 2)Saida_hexadecimal ;; 3)Saida_octal ;; *)Principal ;; esac } Saida_decimal() { case $OPCAO2 in 1) # Conversão de decimal. # Base 10 somente 0-9: grep -qs "[^0-9]" <(echo "$VLR") [[ $? == 0 ]] && { Echo "-> Na base 10 use de 0-9" read -n 1 && continue ; } RE=$(bc -l <<< "obase=10 ; ibase=2 ; $NUM2"); echo "O seu numero na base decimal é: $RE";; esac } Saida_hexadecimal() { case $OPCAO2 in 2) # Conversão de hexadecimal grep -qs "[^0-9A-F]" <(echo "$VLR") [[ $? == 0 ]] && { Echo "-> Na base 16 use de 0-9 e A-F" read -n 1 && continue ; } RE=$(bc -l <<< "obase=16 ; ibase=2 ; $NUM2"); echo "O seu numero na base decimal é: $RE";; esac } Saida_octal() { case $OPCAO2 in 3) # Conversão de octal grep -qs "[^0-7]" <(echo "$VLR") [[ $? == 0 ]] && { Echo "-> Na base 8 use de 0-7" read -n 1 && continue ; } RE=$(bc -l <<< "obase=8 ; ibase=2 ; $NUM2"); echo "O seu numero na base decimal é: $RE";; esac } Entrada_decimal() { clear echo "============================" echo "| digite um numero decimal |" echo "============================" read NUM1 echo "" clear echo "=================================" echo "| 1) Converter para binario |" echo "| 2) Converter para hexadecimal |" echo "| 3) Converter para octal |" echo "| *) aperte qualquer tecla para |" echo "| voltar ao menu iniciar |" echo "=================================" echo "opcao: " read OPCAO3 case $OPCAO3 in 1)Saida_binario ;; 2)Saida_hexadecimale ;; 3)Saida_octale ;; *)Principal ;; esac } Saida_binario() { case $OPCAO3 in 1) # Conversão de binário grep -qs "[^0-1]" <(echo "$VLR") [[ $? == 0 ]] && { Echo "-> Na base 2 use de 0-1" read -n 1 && continue ; } RE=$(bc -l <<< "obase=2 ; ibase=10 ; $NUM1"); echo "o seu numero binario é: $RE";; esac } Saida_hexadecimale() { case $OPCAO3 in 2) # Conversão de hexadecimal grep -qs "[^0-9A-F]" <(echo "$VLR") [[ $? == 0 ]] && { Echo "-> Na base 16 use de 0-9 e A-F" read -n 1 && continue ; } RE=$(bc -l <<< "obase=16 ; ibase=10 ; $NUM1"); echo "O seu numero na base hexadecimal é: $RE";; esac } Saida_octale() { case $OPCAO3 in 3)# Conversão de octal grep -qs "[^0-7]" <(echo "$VLR") [[ $? == 0 ]] && { Echo "-> Na base 8 use de 0-7" read -n 1 && continue ; } RE=$(bc -l <<< "obase=8 ; ibase=10 ; $NUM1"); echo "O seu numero na base octal é: $RE";; esac } Entrada_octal() { clear echo "==========================" echo "| digite um numero octal |" echo "==========================" read NUM8 echo "" clear echo "=================================" echo "| 1) Converter para binario |" echo "| 2) Converter para hexadecimal |" echo "| 3) Converter para decimal |" echo "| *) Aperte qualquer tecla para |" echo "| votal ao menu iniciar |" echo "=================================" echo "opcao: " read OPCAO4 case $OPCAO4 in 1)Saida_binarioo ;; 2)Saida_hexadecimalo ;; 3)Saida_decimalo ;; *)Principal ;; esac } Saida_binarioo() { case $OPCAO4 in 1) # Conversão de binário grep -qs "[^0-1]" <(echo "$VLR") [[ $? == 0 ]] && { Echo "-> Na base 2 use de 0-1" read -n 1 && continue ; } RE=$(bc -l <<< "obase=2 ; ibase=10 ; $NUM1"); echo "o seu numero binario é: $RE";; esac } Saida_hexadecimal() { case $OPCAO4 in 2) # Conversão de hexadecimal grep -qs "[^0-9A-F]" <(echo "$VLR") [[ $? == 0 ]] && { Echo "-> Na base 16 use de 0-9 e A-F" read -n 1 && continue ; } RE=$(bc -l <<< "obase=16 ; ibase=10 ; $NUM1"); echo "O seu numero na base hexadecimal é: $RE";; esac } Saida_decimalo() { case $OPCAO2 in 1) # Conversão de decimal. # Base 10 somente 0-9: grep -qs "[^0-9]" <(echo "$VLR") [[ $? == 0 ]] && { Echo "-> Na base 10 use de 0-9" read -n 1 && continue ; } RE=$(bc -l <<< "obase=10 ; ibase=2 ; $NUM2"); echo "O seu numero na base decimal é: $RE";; esac } Entrada_hexadecimal() { clear echo "================================" echo "| digite um numero hexadecimal |" echo "================================" read NUM16 echo "" clear echo "=================================" echo "| 1) Converter para binario |" echo "| 2) Converter para decimal |" echo "| 3) Converter para octal |" echo "| *) Aperte qualquer tecla para |" echo "| voltar ao menu iniciar |" echo "=================================" echo "opcao: " read OPCAO3 case $OPCAO3 in 1)Saida_binariou ;; 2)Saida_decimalu ;; 3)Saida_octalu ;; *)Principal ;; esac } Saida_binariou() { case $OPCAO3 in 1) # Conversão de binário grep -qs "[^0-1]" <(echo "$VLR") [[ $? == 0 ]] && { Echo "-> Na base 2 use de 0-1" read -n 1 && continue ; } RE=$(bc -l <<< "obase=2 ; ibase=10 ; $NUM1"); echo "o seu numero binario é: $RE";; esac } Saida_decimalu() { case $OPCAO3 in 1) # Conversão de decimal. # Base 10 somente 0-9: grep -qs "[^0-9]" <(echo "$VLR") [[ $? == 0 ]] && { Echo "-> Na base 10 use de 0-9" read -n 1 && continue ; } RE=$(bc -l <<< "obase=10 ; ibase=2 ; $NUM2"); echo "O seu numero na base decimal é: $RE";; esac } Saida_octalu() { case $OPCAO3 in 3)# Conversão de octal grep -qs "[^0-7]" <(echo "$VLR") [[ $? == 0 ]] && { Echo "-> Na base 8 use de 0-7" read -n 1 && continue ; } RE=$(bc -l <<< "obase=8 ; ibase=10 ; $NUM1"); echo "O seu numero na base octal é: $RE";; esac } Principal
Troca de imagem da tela de bloqueio de usuário no Linux Mint MATE
Gerenciar usuários do OpenLDAP com Sistema ZIMBRA
Instalar Unreal Tourment no Linux
Atualizar o macOS no Mac - Opencore Legacy Patcher
Crie alias para as tarefas que possuam longas linhas de comando - bash e zsh
Criando um gateway de internet com o Debian
Configuração básica do Conky para mostrar informações sobre a sua máquina no Desktop
Aprenda a criar músicas com Inteligência Artificial usando Suno AI
Instalando Zoom Client no Ubuntu 24.04 LTS
Instalando Zoom Client no Fedora 40
Instalando Navegador Firefox no Debian 12
Bloqueando propagandas no Youtube e outros sites com o uBlocker Origin