dotfiles

Repositório dotfiles
git clone git://git.sivaldodavi.com/dotfiles.git
Log | Files | Refs | README

sync (1657B)


      1 #!/bin/sh
      2 # Sincronizar com rclone - estratégia interativa
      3 
      4 REMOTE="Dufs"
      5 STRATEGY="${1}"
      6 
      7 if [ -z "$STRATEGY" ]; then
      8     echo ""
      9     echo "Escolha a estratégia de sincronização:"
     10     echo ""
     11     echo "  1) newer  - Arquivo mais recente vence (bidirecional)"
     12     echo "  2) remoto - Remoto sobrescreve local"
     13     echo "  3) local  - Local sobrescreve remoto"
     14     echo ""
     15     read -p "Opção (1-3): " choice
     16     
     17     case "$choice" in
     18         1) STRATEGY="newer" ;;
     19         2) STRATEGY="remoto" ;;
     20         3) STRATEGY="local" ;;
     21         *) echo "Inválido"; exit 1 ;;
     22     esac
     23 fi
     24 
     25 
     26 
     27 case "$STRATEGY" in
     28     newer)
     29         rclone copyto "${REMOTE}:/Contatos" ~/.local/share/abook/addressbook --update
     30         rclone copyto ~/.local/share/abook/addressbook "${REMOTE}:/Contatos" --update
     31         rclone copyto "${REMOTE}:/bookmarks" ~/.local/share/bookmarks --update
     32         rclone copyto ~/.local/share/bookmarks "${REMOTE}:/bookmarks" --update
     33         rclone copy "${REMOTE}:/Igreja" ~/.cache/ --update
     34         rclone copy ~/.cache/ "${REMOTE}:/Igreja" --update
     35         ;;
     36     remoto)
     37         rclone copyto "${REMOTE}:/Contatos" ~/.local/share/abook/addressbook
     38         rclone copyto "${REMOTE}:/bookmarks" ~/.local/share/bookmarks
     39         rclone copy "${REMOTE}:/Igreja" ~/.cache/
     40         ;;
     41     local)
     42         rclone copyto ~/.local/share/abook/addressbook "${REMOTE}:/Contatos"
     43         rclone copyto ~/.local/share/bookmarks "${REMOTE}:/bookmarks"
     44         rclone copy ~/.cache/ "${REMOTE}:/Igreja"
     45         ;;
     46     *)
     47         echo "Estratégia desconhecida: $STRATEGY"
     48         exit 1
     49         ;;
     50 esac
     51 
     52 echo "✓ Sync completo (estratégia: $STRATEGY)"