Advertisement
Guest User

Untitled

a guest
May 25th, 2018
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.10 KB | None | 0 0
  1. #Created by Nathan Campbell 16009710
  2. #MUOS assessment 3 - Menu
  3.  
  4. #!/bin/bash
  5.  
  6. clear
  7.  
  8.  
  9. hash figlet &> /dev/null
  10. if [ $? -eq 1 ]; then
  11. echo >&2 "Figlet not found.";echo;
  12. echo "Going to install figlet now..."
  13. sudo apt update && sudo apt install figlet -y;echo;
  14. echo "Figlet now installed!"
  15. sleep 2
  16. fi
  17.  
  18. clear
  19. function menu {
  20. clear
  21. loop=y
  22. while [ $loop = y ]; do
  23. echo -e 'LO3 Menu' | figlet -f standard;echo;
  24. #echo "Main Menu";echo; "==============="
  25. echo -e "\e[33m"$(date);echo;
  26. echo -e "\e[36m0: Quit";echo;
  27. echo -e "\e[39m1: Create backup"
  28. echo "2: Long listing"
  29. echo "3: Delete backup"
  30. read -n1 -s choice
  31.  
  32. case $choice in
  33. 0) quit;;
  34. 1) backup;;
  35. 2) listing;;
  36. 3) delbackup;;
  37. *) echo "Invalid choice, Please try again!"; sleep1; menu;;
  38. esac
  39. done
  40. }
  41.  
  42. function quit {
  43. clear
  44. exit
  45. }
  46.  
  47. function backup {
  48. clear
  49. echo "Enter the absolute path of a directory to backup: "; read x;echo;
  50. if [ -d $x ]; then
  51. BACKUP=$HOME/backup_`(date +%Y_%m_%d_%I_%M_%P)`.tar
  52. tar -czf $BACKUP $x; tar -ztvf $BACKUP > $HOME/backup.log
  53. sleep 1
  54. echo "Directory backed up."
  55. sleep 1
  56. echo "`backup.log` `date -u`" >> $HOME/backup.log
  57. sleep 1
  58. echo "Backup log created.";echo;
  59. sleep 1
  60. cat $HOME/backup.log;echo;
  61. read -n 1 -s -r -p "Press any key to continue"
  62. clear
  63. else
  64. echo "Directory does not exist"
  65. sleep 2
  66. read -n 1 -s -r -p "Press any key to continue"
  67. clear
  68. fi
  69. }
  70.  
  71. function listing {
  72. clear
  73. ls -l $HOME/backup*
  74. echo
  75. read -n 1 -s -r -p "Press any key to continue"
  76. clear
  77. }
  78.  
  79. function delbackup {
  80. clear
  81. ls -l $HOME/backup*
  82. echo
  83. echo "Enter the name of the backup you wish to delete :"; read Y
  84. echo "Delete: $HOME/$Y ? (y/n)"; read d
  85. if [[ $d == "Y" || $d == "y" ]]; then
  86. echo
  87. echo "Deleting backup..."
  88. sleep 2
  89. rm $HOME/$Y
  90. echo
  91. echo "The backup has been removed."
  92. sleep 3
  93. clear
  94. ls -l $HOME/backup*
  95. echo
  96. read -n 1 -s -r -p "Press any key to continue"
  97. clear
  98. else
  99. echo "Not deleting backup"
  100. read -n 1 -s -r -p "Press any key to continue"
  101. clear
  102. fi
  103. }
  104.  
  105. menu
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement