Shell Script ile Yedekle ve Geri Yükle Uygulaması Yapımı 

Merhabalar,
ShellScript Kullanarak Kendi Yedekle ve Geri Yükle Uygulamamızı Yapacağız.
Ben burda APP Dosyalarının Kullanıcı konfigürasyonlarını İçeren home/.config Klasörünü Yedekleme ve Geri Yükleme Yapacak Şekilde Ayarladım Siz Kendi İhtiyaçlarınıza Göre Şekillendirebilirsiniz. Özellikle Masaüstü Ortamı İçermeyen Server Sistemlerde Oldukça İşe Yarar Bir Uygulama. (Github)

Öncelikle yedekle.sh Adında Ana Dosyamızı Oluşturalım.
Terminali Açalım.

$ touch yedekle.sh
Bash

Kodlarımızı yedekle.sh a yazalım.

$ nano yedekle.sh
Bash

İşlem Kodu ShellScript.

#!/bin/bash
#Fatih ÖNDER https://github.com/cektor

# Renk kodları
GREEN="\e[32m"
RED="\e[31m"
YELLOW="\e[33m"
RESET="\e[0m"


# Yedekleme ve geri yükleme fonksiyonları
backup() {
    # Klasörleri oluştur
    mkdir -p ~/config_yedek

    # Mevcut .config dizinini yedekle
    cp -r ~/.config ~/config_yedek/

    # Bilgilendirme dosyasını oluştur veya güncelle
    echo "Bu klasör içinde home/.config yedeği bulunmaktadır (gizli dosya olarak görünebilir. CTRL+H)" > ~/config_yedek/bilgilendirme.txt

    echo -e "${GREEN}Yedekleme tamamlandı.${RESET}"
}

restore() {
    # Geri yükleme işlemi
    if [ -d ~/config_yedek ]; then
        # .config dizinini geri yükle
        cp -r ~/config_yedek/.config ~/.config/
        # Tüm dosya ve klasörlere değiştirme izni ver
        chmod -R 777 ~/.config
        echo -e "${GREEN}Geri yükleme tamamlandı.${RESET}"
    else
        echo -e "${RED}config_yedek klasörü bulunamadı. Lütfen önce yedek alın.${RESET}"
    fi
}

delete_backup() {
    # Yedekleme klasörünü sil
    if [ -d ~/config_yedek ]; then
        rm -rf ~/config_yedek
        echo -e "${YELLOW}config_yedek klasörü ve içeriği silindi.${RESET}"
    else
        echo -e "${RED}config_yedek klasörü bulunamadı.${RESET}"
    fi
}

# Ana döngü
while true; do
    # Kullanıcıdan seçim al
    echo "home/.config Yedekleme ve Geri Yükleme Uygulaması"
    echo "1. Yedekle"
    echo "2. Geri Yükle"
    echo "3. Yedeklemeyi Sil"
    echo "4. Çıkış"
    read -p "Seçiminizi yapın (1/2/3/4): " secim
    echo "" # Boş bir satır ekleyerek görünümü iyileştir

    case $secim in
        1)
            backup
            ;;
        2)
            restore
            ;;
        3)
            delete_backup
            ;;
        4)
            echo -e "${YELLOW}Programdan çıkılıyor.${RESET}"
            exit 0
            ;;
        *)
            echo -e "${RED}Geçersiz seçim. Lütfen 1, 2, 3 veya 4 girin.${RESET}"
            ;;
    esac

    echo "" # Boş bir satır ekleyerek görünümü iyileştir

done
ShellScript

Kodumuzu Yazdıktan sonra kayıt edelim.

CTRL + O
CTRL + X

Sistemimizde Dosyayı Çalıştırmak İçin Terminalden Gerekli İzinleri Verelim.

$ sudo chmod +x yedekle.sh
Bash

Şimdi Çalıştıralım

$ ./yedekle.sh
Bash
NOT: Yedekle ve Geri Yükle Yapacağınız Dosya veya Dosyaların Boyutlarına Bağlı Olarak İşlemler Vakit Alabiliyor.
Saygılar.