Advertisement
Guest User

Untitled

a guest
Mar 26th, 2016
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.87 KB | None | 0 0
  1. #!/bin/bash
  2. #
  3. # File: uploader_email.sh
  4. #
  5. # Author: Giovani Paseto
  6. #
  7. # Created on Mar 23, 2015, 18:36:24
  8. #
  9. # Require: bzip, mutt
  10. #
  11. # Config file
  12. VERSION="0.1"
  13. CONFIG_FILE=~/.uploader_email
  14.  
  15. echo "Init setup"
  16. if [[ -e $CONFIG_FILE ]]; then
  17. source "$CONFIG_FILE" 2>/dev/null || {
  18. sed -i'' 's/:/=/' "$CONFIG_FILE" && source "$CONFIG_FILE" 2>/dev/null
  19. }
  20. if [[ $FOLDER_NAME == "" || $MYSQL_U == "" || $MYSQL_P == "" || $MYSQL_DB == "" ]]; then
  21. echo -e "Ops, there's something wrong with you config file, please run again."
  22. unlink $CONFIG_FILE
  23. exit 1
  24. fi
  25. else
  26. while (true); do
  27. echo -ne "\n ----- Uploader v$VERSION - [SETUP] ----- \n"
  28. echo -ne "\n Please follow instructions above:\n"
  29. echo -n " Please choose a folder name to store zipped db [UPLOADER]:"
  30. read FOLDER_NAME
  31. if [[ $FOLDER_NAME == "" ]]; then
  32. FOLDER_NAME="UPLOADER"
  33. fi
  34. echo -n " MySQL username:"
  35. read MYSQL_U
  36. echo -n " MySQL password:"
  37. read MYSQL_P
  38. echo -n " MySQL Database names (,) comma separated:"
  39. read MYSQL_DB
  40.  
  41. # Save config file
  42. echo -ne "OK\n"
  43. echo "FOLDER_NAME=$FOLDER_NAME" > "$CONFIG_FILE"
  44. echo "MYSQL_U=$MYSQL_U" >> "$CONFIG_FILE"
  45. echo "MYSQL_P=$MYSQL_P" >> "$CONFIG_FILE"
  46. echo "MYSQL_DB=$MYSQL_DB" >> "$CONFIG_FILE"
  47.  
  48. echo -ne "\n Done!\n"
  49. break
  50. done;
  51. fi
  52.  
  53. # Params
  54. DATE=$(date +"%d/%m/%Y")
  55. TIME=$(date +"%H:%M")
  56.  
  57. #Create Database backup
  58. DATABASES=$MYSQL_DB;
  59.  
  60. array=$(echo $DATABASES | tr "," "\n");
  61. for x in $array
  62. do
  63. CDB="$(echo -e "${x}" | tr -d '[[:space:]]')"
  64. DATABASE_FOLDER="${FOLDER_NAME}/${CDB}/"
  65. COMPRENSSED_FILE="${DATE}${TIME}"
  66. DB_FILE="${FOLDER_NAME}/${CDB}.sql"
  67. echo -e "-------------------------------------"
  68. echo -e "Generating database backup [$CDB]... \c"
  69. mysqldump --opt --single-transaction --quick --password=$MYSQL_P -u $MYSQL_U $CDB > "${DB_FILE}"
  70. echo "done!"
  71.  
  72. echo -e "BZIP2... $DB_FILE"
  73. # 7z a "$DB_FILE.7z" "$DB_FILE"
  74. #gzip "$DB_FILE"
  75. bzip2 "$DB_FILE"
  76. echo -e "Sending email... \c"
  77. echo "Attached the backup file $DATE $TIME " | mutt -a "${DB_FILE}.bz2" -s "Backup DB ${CDB}" -- sgw.v3x@gmail.com
  78. echo "done!"
  79. rm "${DB_FILE}.bz2"
  80. done
  81.  
  82. echo "Done $DATE $TIME"
  83.  
  84.  
  85. #mutt config put at /home/.muttrc
  86. #touch .muttrc
  87. #set ssl_starttls=yes
  88. #set ssl_force_tls=yes
  89. #set imap_user = 'sgw.v3x@gmail.com'
  90. #set imap_pass = 'pwd'
  91. #set from='sgw.v3x@gmail.com'
  92. #set realname='Your Name'
  93. #set folder = imaps://imap.gmail.com/
  94. #set spoolfile = imaps://imap.gmail.com/INBOX
  95. #set postponed="imaps://imap.gmail.com/[Gmail]/Drafts"
  96. #set header_cache = "~/.mutt/cache/headers"
  97. #set message_cachedir = "~/.mutt/cache/bodies"
  98. #set certificate_file = "~/.mutt/certificates"
  99. #set smtp_url = 'smtps://sgw.v3x@gmail.com:pwd@smtp.gmail.com:465/'
  100. #set move = no
  101. #set imap_keepalive = 900
  102. #
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement