Ahoj, zkusil jsem trochu modifikovat ten posledni kod, protoze jsem to chtel prevest aby ti bylo prehlednejsi, ale nepovedlo se mi to aby to fungovalo. Muzete jeste pomoc? GPT jsem zatim nezkousel, tak daleko jsem se nedostal, jeste jsem neprisel na to jak updatovat Firefox, natoz abych instaloval nejakeho bota. Ale jestli by to umel opravit ... chci to prevest na KB, MB nebo GB tak aby to bylo prehledne. To s tim printf jeste neumim, takze nemam predstavu... Zatim vse moc tezke.
#!/bin/bash
# Nastavte cestu, kde chcete hledat soubory, pokud jste nevolal skript s parametrem cesty
SEARCH_DIR="${1:-/media/user/alfa_c/WINDOWS/system32}"
# Nastavte názvy výstupních souborů
OUTPUT_FILENAMES="output_fn.txt"
OUTPUT_SIZES_AND_FILENAMES="output_sf.txt"
OUTPUT_CSV="output_s_fd.csv"
# Odstraňte existující výstupní soubory
rm -f "${OUTPUT_FILENAMES}" "${OUTPUT_SIZES_AND_FILENAMES}" "${OUTPUT_CSV}"
# Najděte soubory s velikostí mezi 10 a 20 MB
while read file; do
    # Získejte název souboru
    filename="${file##*/}"
    filepath="${file}"
    # Získejte adresář souboru
    dirname="${file%/*}"
    # Získejte velikost souboru v bytech
    size=$(stat -c "%s" "${file}")
    if [ "$size" -ge 1024 ]; then
      size_U=`echo "($size)/1024"|bc`
      size_U=" $size_U KiB"
      if [ "$size" -ge 1048576 ]; then
        size_U=`echo "($size)/1048576"|bc`
        size_U=" $size_U MiB"
        if [ "$size" -ge 1073741824 ]; then
          size_U=`echo "($size)/1073741824U"|bc`
          size_U=" $size_U GiB"
        fi
      fi
    fi
    size=$(size_U)
    # Počítejte celkovou velikost souborů
    total_size=$(( ${total_size} + ${size} ))
    # Přidejte název souboru do prvního souboru
    echo "${filepath}" >> "${OUTPUT_FILENAMES}"
    # Přidejte velikost a název souboru do druhého souboru
    echo "${size} ${filepath}" >> "${OUTPUT_SIZES_AND_FILENAMES}"
    # Přidejte velikost, název souboru, název adresáře do csv
    echo "${size};${filepath};${dirname}" >> ${OUTPUT_CSV}
done < <(find "${SEARCH_DIR}" -type f -size +10M -size -20M)
# Celkovou velikost nalezených souborů přidejte na konec druhého souboru
total_size_K=`echo "($total_size)/1024"|bc`
total_size_M=`echo "($total_size)/1024/1024"|bc`
total_size_G=`echo "($total_size)/1024/1024/1024"|bc`
total_size_K=" $total_size_K KiB"
total_size_M=" $total_size_M MiB"
total_size_G=" $total_size_G GiB"
echo "Celkova velikost: $total_size_G $total_size_M $total_size_K ${total_size}" >> "${OUTPUT_SIZES_AND_FILENAMES}"