#!/bin/bash

# Loop through all files in the current directory
for file in *; do
    # Skip directories
    [ -f "$file" ] || continue

    # Get filename without extension
    name="${file%.*}"

    # Get file extension (including dot, if any)
    ext="${file##*.}"
    
    if [[ "$file" == *.* ]]; then
        # If file has an extension
        newname="$(echo "$name" | tr '[:lower:]' '[:upper:]').${ext}"
    else
        # If file has no extension
        newname="$(echo "$file" | tr '[:lower:]' '[:upper:]')"
    fi

    # Rename the file only if name is different
    if [[ "$file" != "$newname" ]]; then
        mv -i -- "$file" "$newname"
    fi
done