elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado:


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  [BASH] Ayuda para mejorar
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [BASH] Ayuda para mejorar  (Leído 2,542 veces)
Delacure Mihawk

Desconectado Desconectado

Mensajes: 99


Lulz


Ver Perfil
[BASH] Ayuda para mejorar
« en: 8 Septiembre 2011, 13:58 pm »

Bueno pues por culpa del warzone, se me paso por la cabeza hacer un mini scrip para descifrar el cifrado de julio cesar (más info+), y ya que estaba me propuse también añadir la función de cifrar, hace bastante que no toco bash, y antes tampoco es que supiera mucho.. El scrip funciona, que era mi objetivo, pero estoy bastante seguro de que se puede mejorar, y ahí mi pregunta--> ¿Como lo abrías echo vosotros?

Código:
#!/bin/bash
#
### DeCrip
#
function decrip(){
DIRS=`dirs`
clear
echo "Intrudueix el missatge xifrat:"
# echo "introduce el mensaje cifradado:"
read MISS
echo $MISS | tr "a-z" "b-za" >> Decript.txt
echo $MISS | tr "a-z" "c-zab" >> Decript.txt
echo $MISS | tr "a-z" "d-za-c" >> Decript.txt
echo $MISS | tr "a-z" "e-za-d" >> Decript.txt
echo $MISS | tr "a-z" "f-za-e" >> Decript.txt
echo $MISS | tr "a-z" "g-za-f" >> Decript.txt
echo $MISS | tr "a-z" "h-za-g" >> Decript.txt
echo $MISS | tr "a-z" "i-za-h" >> Decript.txt
echo $MISS | tr "a-z" "j-za-i" >> Decript.txt
echo $MISS | tr "a-z" "k-za-j" >> Decript.txt
echo $MISS | tr "a-z" "l-za-k" >> Decript.txt
echo $MISS | tr "a-z" "m-za-l" >> Decript.txt
echo $MISS | tr "a-z" "n-za-m" >> Decript.txt
echo $MISS | tr "a-z" "o-za-n" >> Decript.txt
echo $MISS | tr "a-z" "p-za-o" >> Decript.txt
echo $MISS | tr "a-z" "q-za-p" >> Decript.txt
echo $MISS | tr "a-z" "r-za-q" >> Decript.txt
echo $MISS | tr "a-z" "s-za-r" >> Decript.txt
echo $MISS | tr "a-z" "t-za-s" >> Decript.txt
echo $MISS | tr "a-z" "u-za-t" >> Decript.txt
echo $MISS | tr "a-z" "v-za-u" >> Decript.txt
echo $MISS | tr "a-z" "w-za-v" >> Decript.txt
echo $MISS | tr "a-z" "x-za-w" >> Decript.txt
echo $MISS | tr "a-z" "y-za-x" >> Decript.txt
echo $MISS | tr "a-z" "za-y" >> Decript.txt
echo "25 possibilidades generadas 100%"
echo "Decript.txt guardado en $DIRS "
echo  
echo "----------------------------------------------------"
}
#############################
#
### Encrip
#
function encrip(){
while :
do
  echo "Número de desplaçaments? (1-25)"
# echo "numero de desplazamientos? (1-25)"
  read NUMERO
  echo "Escriu el missatge a cifrar (recorda no utilitzar la 'ñ' ni cap caràcter especial):"
# echo " Escribe el mensaje a cifrar (recuerda no utilizar la letra 'ñ' ni ningún carácter especial.)
  read MIS
  case $NUMERO in
1) echo $MIS | tr "a-z" "b-za";menu;;
2) echo $MIS | tr "a-z" "c-zab";menu;;
3) echo $MIS | tr "a-z" "d-za-c";menu;;
4) echo $MIS | tr "a-z" "e-za-d";menu;;
5) echo $MIS | tr "a-z" "f-za-e";menu;;
6) echo $MIS | tr "a-z" "g-za-f";menu;;
7) echo $MIS | tr "a-z" "h-za-g";menu;;
8) echo $MIS | tr "a-z" "i-za-h";menu;;
9) echo $MIS | tr "a-z" "j-za-i";menu;;
10) echo $MIS | tr "a-z" "k-za-j";menu;;
11) echo $MIS | tr "a-z" "l-za-k";menu;;
12) echo $MIS | tr "a-z" "m-za-l";menu;;
13) echo $MIS | tr "a-z" "n-za-m";menu;;
14) echo $MIS | tr "a-z" "o-za-n";menu;;
15) echo $MIS | tr "a-z" "p-za-o";menu;;
16) echo $MIS | tr "a-z" "q-za-p";menu;;
17) echo $MIS | tr "a-z" "r-za-q";menu;;
18) echo $MIS | tr "a-z" "s-za-r";menu;;
19) echo $MIS | tr "a-z" "t-za-s";menu;;
20) echo $MIS | tr "a-z" "u-za-t";menu;;
21) echo $MIS | tr "a-z" "v-za-u";menu;;
22) echo $MIS | tr "a-z" "w-za-v";menu;;
23) echo $MIS | tr "a-z" "x-za-w";menu;;
24) echo $MIS | tr "a-z" "y-za-x";menu;;
25) echo $MIS | tr "a-z" "za-y";menu;;
  esac
done
}
#
#################
##### Menu ######
#################
#
function menu(){
while :
do
  echo
  echo
  echo "Elige una opcion"
  echo "1) cifrar"
  echo "2) descifrar"
  echo "3) Salir"
  read OPCION
  case $OPCION in
    1)
encrip;;
    2)
decrip;;
    3)
echo
echo "byee :)"
echo
exit
   esac
done
}

####### Executem/ejecutamos el menu ###########
menu

Y tambien un par de preguntas:

1-  al principio hago DIRS=`dirs`  para luego echo "Decript.txt guardado en $DIRS " , estoy seguro de que hay alguna forma más limpia de indicar donde se crea el archivo de texto  :xD
2- y en la funcion "while" si alguien me puede explicar el significado de los dos puntos " : ", me lo imagino pero no estoy 100% seguro xdd

salu2.


« Última modificación: 9 Septiembre 2011, 14:03 pm por Delacure Mihawk » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
[Bash script] equivalente de goto en batch para bash (SOLUCIONADO)
Scripting
moikano→@ 4 16,119 Último mensaje 4 Noviembre 2010, 15:58 pm
por moikano→@
Ayuda para mejorar la seguridad con Ajax
Seguridad
Zinico 1 2,807 Último mensaje 24 Noviembre 2012, 14:57 pm
por ‭lipman
ayuda para mejorar pc y montar pc gaming 900€ (otro problema mas) « 1 2 3 »
Hardware
davinix 27 19,402 Último mensaje 9 Febrero 2013, 17:55 pm
por davinix
Ayuda para un novato en Bash
Scripting
koenig11 5 2,458 Último mensaje 20 Noviembre 2019, 17:32 pm
por animanegra
Ayuda para mejorar el Buster Sandbox Analyzer
Análisis y Diseño de Malware
Buster_BSA 5 10,676 Último mensaje 24 Agosto 2021, 17:52 pm
por Buster_BSA
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines