#!/bin/bash

rename_to_numbers() {
    local count=0
    local script_name=$(basename "$0")
    
    # Сначала посчитаем все файлы (исключая каталоги и сам скрипт)
    for file in *; do
        if [[ -f "$file" && "$file" != "$script_name" ]]; then
            ((count++))
        fi
    done
    
    # Если файлов нет, выходим
    if [[ $count -eq 0 ]]; then
        echo "В каталоге нет файлов (кроме скрипта)"
        return 1
    fi
    
    echo "Найдено файлов для переименования: $count"
    echo "Скрипт '$script_name' исключен из переименования"
    
    local i=1
    # Переименовываем файлы, сохраняя расширения
    for file in *; do
        if [[ -f "$file" && "$file" != "$script_name" ]]; then
            # Получаем расширение файла
            local extension="${file##*.}"
            local filename="${file%.*}"
            
            # Если файл без расширения или расширение совпадает с именем
            if [[ "$extension" == "$file" ]]; then
                extension=""
            else
                extension=".$extension"
            fi
            
            # Формируем новое имя
            local new_name="${i}${extension}"
            
            # Переименовываем, если имя изменилось
            if [[ "$file" != "$new_name" ]]; then
                echo "Переименовываем: '$file' -> '$new_name'"
                mv -- "$file" "$new_name"
            fi
            
            ((i++))
        fi
    done
    
    echo "Переименование завершено!"
}

rename_to_numbers
