conversor de bases no shell
Publicado por gabriel 29/08/2008
[ Hits: 7.434 ]
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
Shell Script para instalação do ePSXe no Ubuntu
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Flatpak: remover runtimes não usados e pacotes
Mudar o gerenciador de login (GDM para SDDM e vice-versa) - parte 2
Acessar ftp por nome ao invés de ip [RESOLVIDO] (5)
Estou com sede em aprender sobre o nosso querido Linux. (2)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta