Advertisement
FranzVuttke

backup_continue.sav.sh

Feb 24th, 2024 (edited)
660
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 2.41 KB | Source Code | 0 0
  1. #/bin/bash
  2.  
  3.  
  4. # pastebin: https://pastebin.com/Bdt2rqmp
  5.  
  6. #
  7. # createed by OuNiS 02.2024
  8. #
  9. # FTL - tworzenie kopii zapasowej pliku 'continue.sav'
  10. #
  11.  
  12. LOG_FILE=backup.log
  13. BELL="\007"
  14.  
  15. ANSW_CONFIRM="t"
  16. FILE_2_ROLLBACK="continue.sav"
  17. BACKUP_FILE="continue.backup"
  18. # kolory textu
  19. # zestaw kodów kolorów:
  20. # https://pastebin.com/iXJ8umhX
  21. F_COLOR_TXT_DEF='\e[0m'
  22. F_COLOR_TXT_RED='\e[31m'
  23. F_COLOR_TXT_BLINK='\e[5m'
  24. F_COLOR_TXT_BLUE='\e[34m'
  25.  
  26. # domyślnie zezwolenie na kopiowanie
  27. COPY_PERMISSION=1
  28.  
  29. TIMESTAMP=`date '+%Y-%m-%d %H:%M:%S'`
  30.  
  31. backup_save=0
  32.  
  33. # echo date +%Y
  34. echo
  35. echo -e "FTL - tworzenie kopii pliku $F_COLOR_TXT_BLUE'$FILE_2_ROLLBACK'$F_COLOR_TXT_DEF"
  36.  
  37. # dodatkowo: parametr jako plik backupu inny niż domyślny (BACKUP_FILE -> continue.backup)
  38. if test $# -eq 1; then
  39.     echo -e "*** Podano nazwę pliku do backupu: $F_COLOR_TXT_BLUE$1 $F_COLOR_TXT_DEF"
  40.     BACKUP_FILE=$1
  41. fi
  42.  
  43. # echo "Nowa nazwa pliku kopii: $BACKUP_FILE"
  44.  
  45.  
  46. if test -e $BACKUP_FILE; then
  47.     echo -ne "$BELL"
  48.     echo -e "UWAGA, Plik $F_COLOR_TXT_RED'$BACKUP_FILE'$F_COLOR_TXT_DEF kopii zapasowej istnieje!!!"
  49.     echo -n "Nadpisać istniejącą kopię(T/n)? "
  50.     read answ
  51.     if test -z $answ; then
  52.         answ="T"
  53.     fi
  54.     commit=1
  55. # zawieranie się znaków w zbiorze
  56.     case $answ in
  57.         T|$ANSW_CONFIRM) ;; # potwiedzenie 'T' albo 't'
  58.         *)   commit=0;;
  59.     esac
  60.  
  61.     if test $commit -eq 1 ; then
  62. #       echo "ODPOWIEDŹ: $answ - ZGODA WYRAŻONA!!! - KOPIOWANIE..."
  63. #       echo -e "KOPIOWANIE... z $F_COLOR_TXT_BLUE '$FILE_2_ROLLBACK' $F_COLOR_TXT_DEF do $F_COLOR_TXT_BLUE '$BACKUP_FILE'"
  64.         cp $FILE_2_ROLLBACK $BACKUP_FILE
  65.         backup_save=1
  66.     else
  67.         echo -e "Tworzenie kopii zapasowej pliku '$FILE_2_ROLLBACK' $F_COLOR_TXT_RED ANULOWANE...$F_COLOR_TXT_DEF"
  68.         COPY_PERMISSION=0
  69.     fi
  70. fi
  71. echo $COPY_PERMISSION
  72. if test $COPY_PERMISSION -eq 1; then
  73.     echo -e "KOPIOWANIE... z $F_COLOR_TXT_BLUE '$FILE_2_ROLLBACK'$F_COLOR_TXT_DEF do $F_COLOR_TXT_BLUE '$BACKUP_FILE'$F_COLOR_TXT_DEF"
  74.     cp $FILE_2_ROLLBACK $BACKUP_FILE
  75.     backup_save=1
  76. else
  77.     echo "Operacja przerwana..."
  78. fi
  79.  
  80.  
  81. # uaktualnianie logu
  82. if [[ $backup_save -eq 1 ]]
  83. then
  84.     echo "$TIMESTAMP $FILE_2_ROLLBACK -> $BACKUP_FILE" >> $LOG_FILE
  85. fi
  86.  
  87. echo -n "Wyświetlić zawartość katalogu(T/n)? "
  88. read answ
  89. if test -z "$answ"; then
  90.     answ="T"
  91. fi
  92. commit=1
  93. # zawieranie się znaków w zbiorze
  94. case $answ in
  95.     T|t) ;;
  96.     *)   commit=0;;
  97. esac
  98.  
  99. if test $commit -eq 1; then
  100.     ls -pAltr
  101. fi
  102.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement