#!/bin/bash # Dieses Skript berechnet die Gesamtgröße aller Dateien mit einer bestimmten Erweiterung in einem Verzeichnisbaum. # Das Verzeichnis, in dem die Suche durchgeführt werden soll. search_directory="/pfad/zum/verzeichnis" # Die gewünschte Dateierweiterung (z. B. ".txt"). file_extension=".txt" # Erzeugen eines temporären Verzeichnisses für Zwischenergebnisse. temp_dir=$(mktemp -d) # Verwenden von find und du, um die Dateigrößen zu sammeln und in einer temporären Datei zu speichern. find "$search_directory" -type f -name "*$file_extension" -exec du -b {} + > "$temp_dir/filesizes.txt" # Summieren der Dateigrößen aus der temporären Datei. total_size=0 while IFS=$'\t' read -r size _; do total_size=$((total_size + size)) done < "$temp_dir/filesizes.txt" # Ausgabe der Gesamtgröße in lesbarer Form. echo "Die Gesamtgröße der Dateien mit der Erweiterung '$file_extension' in '$search_directory' beträgt:" echo "$(numfmt --to=iec $total_size)" # Bereinigen des temporären Verzeichnisses. rm -r "$temp_dir"