#!/bin/bash SOURCE_DIR="/home/agtuning/public_html/image/catalog/slides" CACHE_DIR="/home/agtuning/public_html/image/cache/catalog/slides" cd "$CACHE_DIR" || exit 1 # Λίστα με τα πιθανά αρχικά αρχεία declare -a source_files=( "Hero_Banner_APR.webp" "Hero_Banner_APR_mobile.webp" "Hero_Banner_Airteck.webp" "Hero_Banner_Airteck_mobile.webp" "Hero_Banner_Eventuri.webp" "Hero_Banner_Eventuri-mobile.webp" "turn130r.webp" "turn130r-mobile.webp" ) echo "=== Εκκίνηση αντιγραφής αρχείων ===" echo "Πηγή: $SOURCE_DIR" echo "Cache: $CACHE_DIR" echo "" for cached_file in *; do [ -f "$cached_file" ] || continue echo "Επεξεργασία: $cached_file" # Εξαγωγή βασικού ονόματος (χωρίς ανάλυση και χωρίς επεκτάσεις .webp.webp) base_name="$cached_file" # 1. Αφαίρεση όλων των αναλύσεων (-4200x1000w, -5120x1100, κλπ) base_name=$(echo "$base_name" | sed -E 's/-[0-9]+x[0-9]+[hw]*//g') # 2. Αφαίρεση διπλών επεκτάσεων base_name=$(echo "$base_name" | sed 's/\.webp\.webp$/.webp/' | sed 's/\.webp\.webp\.webp$/.webp/') # 3. Αφαίρεση του "w" ή "h" στο τέλος (αν υπάρχει πριν το .webp) base_name=$(echo "$base_name" | sed 's/[wh]\.webp$/.webp/') echo " Μετατροπή σε βασικό: $base_name" # Ψάξε αν το base_name ταιριάζει με κάποιο από τα source_files source_file="" for src in "${source_files[@]}"; do # Έλεγχος αν το base_name είναι ίδιο με το src ή αν το src περιέχεται στο base_name if [[ "$base_name" == "$src" ]] || [[ "$base_name" == *"$src" ]]; then source_file="$SOURCE_DIR/$src" break fi done # Εναλλακτικός έλεγχος: αφαίρεση "-mobile" για τα αρχεία που δεν βρέθηκαν if [ -z "$source_file" ] && [[ "$base_name" == *"-mobile"* ]]; then no_mobile_name=$(echo "$base_name" | sed 's/-mobile//') for src in "${source_files[@]}"; do if [[ "$no_mobile_name" == "$src" ]]; then source_file="$SOURCE_DIR/$src" break fi done fi # Τελικός έλεγχος: αν δεν βρέθηκε ακόμα, χρησιμοποίησε το πρώτο κοινό τμήμα if [ -z "$source_file" ]; then # Βρες το κοινό πρόθεμα if [[ "$base_name" == Hero_Banner_APR* ]]; then if [[ "$base_name" == *mobile* ]]; then source_file="$SOURCE_DIR/Hero_Banner_APR_mobile.webp" else source_file="$SOURCE_DIR/Hero_Banner_APR.webp" fi elif [[ "$base_name" == Hero_Banner_Airteck* ]]; then if [[ "$base_name" == *mobile* ]]; then source_file="$SOURCE_DIR/Hero_Banner_Airteck_mobile.webp" else source_file="$SOURCE_DIR/Hero_Banner_Airteck.webp" fi elif [[ "$base_name" == Hero_Banner_Eventuri* ]]; then if [[ "$base_name" == *mobile* ]]; then source_file="$SOURCE_DIR/Hero_Banner_Eventuri-mobile.webp" else source_file="$SOURCE_DIR/Hero_Banner_Eventuri.webp" fi elif [[ "$base_name" == turn130r* ]]; then if [[ "$base_name" == *mobile* ]]; then source_file="$SOURCE_DIR/turn130r-mobile.webp" else source_file="$SOURCE_DIR/turn130r.webp" fi fi fi if [ -n "$source_file" ] && [ -f "$source_file" ]; then echo " ✓ Αντιγραφή: $(basename "$source_file") -> $cached_file" cp -f "$source_file" "$cached_file" else echo " ✗ Δεν βρέθηκε αρχείο για: $cached_file" echo " Βασικό όνομα: $base_name" fi echo "" done echo "=== Ολοκληρώθηκε ==="