Ich brauche Hilfe bei einem bash-Skript, das durch ein Verzeichnis und seine Unterverzeichnisse schleift, auf der Suche nach Dateien mit einer bestimmten Erweiterung (z.B..txt). Für jede gefundene Datei sollte das Skript das Datum extrahieren, das es zuletzt geändert wurde, und ein neues Verzeichnis erstellen, das nach diesem Datum benannt wurde (falls es nicht bereits existiert).
Sicher! Hier ist ein bash-Skript, das die von Ihnen beschriebene Funktionalität implementiert: ``` #!/bin/bash # geben Sie das zu suchende Verzeichnis und die Dateierweiterung an, um nach search_dir=" zu suchen./" file_ext=".txt" # loop durch alle Dateien im Suchverzeichnis und seine Unterverzeichnisse für Datei in $(find $search_dir -type f -name "*$file_ext") zu loop; packen Sie # das Datum, an dem die Datei zuletzt geändert wurde file_date=$(date -r "$file" +%Y-%m-%d) # erstellen Sie ein Verzeichnis, das nach dem Änderungsdatum benannt ist, wenn es nicht bereits existiert, wenn [! -d "$file_date" ]; dann mkdir "$file_date" fi # die Datei in das Verzeichnis verschieben, das nach dem Änderungsdatum benannt wurde.