Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #/bin/bash
- # pastebin: https://pastebin.com/Bdt2rqmp
- #
- # createed by OuNiS 02.2024
- #
- # FTL - tworzenie kopii zapasowej pliku 'continue.sav'
- #
- LOG_FILE=backup.log
- BELL="\007"
- ANSW_CONFIRM="t"
- FILE_2_ROLLBACK="continue.sav"
- BACKUP_FILE="continue.backup"
- # kolory textu
- # zestaw kodów kolorów:
- # https://pastebin.com/iXJ8umhX
- F_COLOR_TXT_DEF='\e[0m'
- F_COLOR_TXT_RED='\e[31m'
- F_COLOR_TXT_BLINK='\e[5m'
- F_COLOR_TXT_BLUE='\e[34m'
- # domyślnie zezwolenie na kopiowanie
- COPY_PERMISSION=1
- TIMESTAMP=`date '+%Y-%m-%d %H:%M:%S'`
- backup_save=0
- # echo date +%Y
- echo
- echo -e "FTL - tworzenie kopii pliku $F_COLOR_TXT_BLUE'$FILE_2_ROLLBACK'$F_COLOR_TXT_DEF"
- # dodatkowo: parametr jako plik backupu inny niż domyślny (BACKUP_FILE -> continue.backup)
- if test $# -eq 1; then
- echo -e "*** Podano nazwę pliku do backupu: $F_COLOR_TXT_BLUE$1 $F_COLOR_TXT_DEF"
- BACKUP_FILE=$1
- fi
- # echo "Nowa nazwa pliku kopii: $BACKUP_FILE"
- if test -e $BACKUP_FILE; then
- echo -ne "$BELL"
- echo -e "UWAGA, Plik $F_COLOR_TXT_RED'$BACKUP_FILE'$F_COLOR_TXT_DEF kopii zapasowej istnieje!!!"
- echo -n "Nadpisać istniejącą kopię(T/n)? "
- read answ
- if test -z $answ; then
- answ="T"
- fi
- commit=1
- # zawieranie się znaków w zbiorze
- case $answ in
- T|$ANSW_CONFIRM) ;; # potwiedzenie 'T' albo 't'
- *) commit=0;;
- esac
- if test $commit -eq 1 ; then
- # echo "ODPOWIEDŹ: $answ - ZGODA WYRAŻONA!!! - KOPIOWANIE..."
- # echo -e "KOPIOWANIE... z $F_COLOR_TXT_BLUE '$FILE_2_ROLLBACK' $F_COLOR_TXT_DEF do $F_COLOR_TXT_BLUE '$BACKUP_FILE'"
- cp $FILE_2_ROLLBACK $BACKUP_FILE
- backup_save=1
- else
- echo -e "Tworzenie kopii zapasowej pliku '$FILE_2_ROLLBACK' $F_COLOR_TXT_RED ANULOWANE...$F_COLOR_TXT_DEF"
- COPY_PERMISSION=0
- fi
- fi
- echo $COPY_PERMISSION
- if test $COPY_PERMISSION -eq 1; then
- 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"
- cp $FILE_2_ROLLBACK $BACKUP_FILE
- backup_save=1
- else
- echo "Operacja przerwana..."
- fi
- # uaktualnianie logu
- if [[ $backup_save -eq 1 ]]
- then
- echo "$TIMESTAMP $FILE_2_ROLLBACK -> $BACKUP_FILE" >> $LOG_FILE
- fi
- echo -n "Wyświetlić zawartość katalogu(T/n)? "
- read answ
- if test -z "$answ"; then
- answ="T"
- fi
- commit=1
- # zawieranie się znaków w zbiorze
- case $answ in
- T|t) ;;
- *) commit=0;;
- esac
- if test $commit -eq 1; then
- ls -pAltr
- fi
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement