SHARE
TWEET

Untitled

a guest Aug 14th, 2019 70 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #!/bin/sh
  2. # Muestra el menu general
  3. _menu()
  4. {
  5.     echo "Selecciona una opcion:"
  6.     echo
  7.     echo "1) Buscar archivo "
  8.     echo "2) Copiar "
  9.     echo "3) Mover "
  10.     echo "4) Cambiar nombre a archivo "
  11.     echo "5) Buscar procesos "
  12.     echo "5) Matar proceso "
  13.     echo "6) Matar proceso "
  14.     echo "7) Usuarios loggeados "
  15.     echo "8) Usuario loggeado "
  16.     echo "9) Funcion creada por el alumno"
  17.     echo
  18.     echo "10) Salir"
  19.     echo
  20.     echo -n "Indica una opcion: "
  21. }
  22.  
  23. # Muestra la opcion seleccionada del menu
  24. _mostrarResultado()
  25. {
  26.     clear
  27.     echo ""
  28.     echo "------------------------------------"
  29.     echo "Has seleccionado la opcion $1"
  30.     echo "------------------------------------"
  31.     echo ""
  32. }
  33.  
  34. _funcionHola()
  35. {
  36.    nombre=$LOGNAME
  37. }
  38.  
  39. # opcion por defecto
  40. opc="0"
  41.  
  42. # bucle mientas la opcion indicada sea diferente de 10 (salir)
  43. until [ "$opc" -eq "10" ];
  44. do
  45.     case $opc in
  46.         1)
  47.             _mostrarResultado $opc
  48.             _menu
  49.             echo "Cual es el archivo que buscas"
  50.             read FILE
  51.             ls -R | grep $FILE;;
  52.         2)
  53.             _mostrarResultado $opc
  54.             _menu
  55.             echo "Escribe el nombre del archivo:"
  56.             read copiar
  57.             echo "dame la ruta destino"
  58.             read target
  59.             cp "$copiar" "${target}${path}";;
  60.         3)
  61.             _mostrarResultado $opc
  62.             _menu
  63.             echo "Escribe el fichero"
  64.             read mover
  65.             echo "Escribe la ruta destino"
  66.             read target
  67.             mv "$mover" "${target}${path}";;
  68.         4)
  69.             _mostrarResultado $opc
  70.             _menu
  71.             mv filename1.ext filename2.ext;;
  72.         5)
  73.             _mostrarResultado $opc
  74.             _menu
  75.             ps aux;;
  76.         6)
  77.             _mostrarResultado $opc
  78.             _menu
  79.                 if [ -z "$1" ]; then
  80.                         echo "Proporciona una cadena para buscar el proceso"
  81.                     else
  82.                         processes=$(ps aux | grep $1 -i | awk -F ' ' '{print $2}' | xargs)
  83.                         echo "Procesos:"$processes
  84.                         while true; do
  85.                             read -ep "Estas seguro de matar los'$1' procesos? [y/N] " yesno
  86.                             case $yesno in
  87.                                 [Yy]* )
  88.                                     echo 'deteniendo procesos...'
  89.                                     for i in $processes; do kill $i; done
  90.                                     echo "Processes Killed: " $processes
  91.                                     break;;
  92.                                 * )
  93.                                     echo "Saltar procesos..."
  94.                                     break;;
  95.                             esac
  96.                         done
  97.                 fi
  98.             ;;
  99.         7)
  100.             _mostrarResultado $opc
  101.             _menu
  102.             echo "Estan conectados:";
  103.             who;;
  104.         8)
  105.             _mostrarResultado $opc
  106.             _menu
  107.             echo "Yo estoy conectado:";
  108.             whoami;;
  109.         9)
  110.            _funcionHola
  111.            echo "$nombre"
  112.             ;;
  113.        
  114.         *)
  115.             # Esta opcion se ejecuta si no es ninguna de las anteriores
  116.             clear
  117.             _menu
  118.             ;;
  119.     esac
  120.     read opc
  121. done
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top