Advertisement
Guest User

Untitled

a guest
Oct 17th, 2019
169
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.80 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. # Validar que se haya ingresando argumentos
  4.  
  5. if [ $# -eq 0 ]
  6. then
  7. echo "No se provió argumentos";
  8. exit 1;
  9. fi
  10.  
  11. #################################
  12. ## Imprime la ayuda del script ##
  13. #################################
  14. print_help(){
  15. echo "Uso del Script: backupmywordpress.sh [Opciones...] ">&2
  16. echo
  17. echo "Este script debe proporcionar los siguientes parametros "
  18. echo " -f, --file Nombre del archivo para guardar la BD "
  19. echo " -h, --help Despliega la ayuda del script "
  20. echo
  21. echo "Ejemplos: "
  22. echo "backup.sh -f ArchivoSQL -s MyWordpress "
  23.  
  24. exit 0;
  25. }
  26.  
  27. echo "Archivo de backup";
  28.  
  29. # Definicion de variables para las opciones del script
  30.  
  31. OPTN=hf:
  32. LONG_OPTN=help,file:
  33.  
  34. # Leer las opciones del script
  35.  
  36. OPTS=$(getopt --options $OPTN --long $LONG_OPTN --name "$0" -- "$@")
  37.  
  38. # Validar las opciones ingresadas
  39. if [ $? != 0 ];
  40. then echo "Ocurrio un error al parsear GETOPTS">&2;
  41. exit 1;
  42. fi
  43.  
  44. eval set -- "$OPTS"
  45.  
  46. while true ;
  47. do
  48. case "$1" in
  49. -f | --file )
  50. FILE=$2
  51. shift 2
  52. ;;
  53. -h | --help )
  54. print_help
  55. shift
  56. ;;
  57. -- )echo "Se ingresarion guiones medios | $OPTS"
  58. shift
  59. break
  60. ;;
  61. *) echo "Ha ocurrido un error" >&2
  62. print_help
  63. ;;
  64. esac
  65. done
  66.  
  67. #Validacion de las variables obligatorias
  68.  
  69. if [ ! -z "$FILE" ]
  70. then
  71. echo "Valor de f = $FILE";
  72. else
  73. echo "No se provió argumentos para el parámetro f o esta vacio";
  74. print_help
  75. fi
  76.  
  77. # Realizar la exportacion de MySQL Server"
  78.  
  79. echo "Exportando Base de datos de MySQL para el archivo..."
  80. echo "Ingresar el password de la base de datos "
  81. mysqldump --all-databases --single-transaction --quick --lock-tables=false > $FILE.sql -u root -p
  82.  
  83. exit 0;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement