Ich habe versehentlich den gesamten Inhalt eines Verzeichnisses in ein Zielverzeichnis kopiert, anstatt das gesamte Verzeichnis zu verschieben. Dies führte dazu, dass ein überfülltes Zielverzeichnis anstelle des Ursprungsverzeichnisses zum Verzeichnis hinzugefügt wurde.
Um dies zu beheben, habe ich Folgendes getan:
ls -rt /path/to/cluttered/destination/directory/ > /opt/dircheck/filestomove
Mit dem obigen Befehl wird die Datei filestomove erstellt, die eine Liste aller Inhalte des Zielverzeichnisses enthält, und zwar in umgekehrter Reihenfolge nach der Zeit, dh vom ältesten zum neuesten.
Dann habe ich ein Unterverzeichnis des jetzt überfüllten Zielverzeichnisses erstellt, in das das Zeug verschoben werden soll.
mkdir /path/to/cluttered/destination/directory/newsubdirectory
Dann wiederholte ich die Verzeichnisliste, mit Ausnahme der Auflistung auf dem Bildschirm und der Anzeige weiterer Details.
ls -lrht /path/to/cluttered/destination/directory/
Diese Zeile listet das Verzeichnis auf, sortiert nach aufsteigendem Datum (umgekehrte Sortierung nach Uhrzeit), und zeigt weitere Informationen an, einschließlich des Datums- / Zeitstempels jeder Datei im jetzt überfüllten Zielverzeichnis. Ich beziehe mich darauf und beginne oben, um zu zeigen, welche Verzeichnisse und Dateien ich dort behalten möchte, wo sie waren. Es wird eine Lücke im Datums- / Zeitstempel der Dateien geben, in der alle neuen Dateien beginnen, die nicht vorhanden sein sollten.
Dann habe ich die im ersten Schritt oben erstellte Datei filestomove bearbeitet (die nach Datum sortiert ist) und die wenigen Dateien aus der Liste gelöscht, die zuvor dort vorhanden waren und die ich aus dem ursprünglichen Verzeichnis behalten möchte.
vim /opt/dircheck/filestomove
Löschen Sie von oben alle Dateien, die Sie nicht verschieben möchten.
Dann habe ich den zuvor in diesem Beitrag aufgeführten Befehl verwendet, um die Dateien in meiner Liste in das neue Verzeichnis zu verschieben, das ich erstellt habe.
sudo xargs -a /opt/dircheck/filestomove mv -t /path/to/cluttered/destination/directory/newsubdirectory
Dadurch wurden alle Dateien im Bruchteil einer Sekunde verschoben. (Hinweis: Möglicherweise benötigen Sie das sudo am Anfang nicht. Dies ist eine Frage der Dateiberechtigungen.)
Jetzt ist mein ursprüngliches Zielverzeichnis schön sauber und enthält ein neues Verzeichnis mit allen Dateien und Verzeichnissen, die es überfüllt haben.