Ich habe
autoload -U zmv
alias mmv='noglob zmv -W'
Bei Beispieldaten (~20 Ordner mit Unterordnern) führe ich
mmv images/**/advert images/**/notice
es funktioniert einfach wie erwartet. Aber wenn ich denselben Befehl auf realen Daten (Hunderttausende Ordner) ausführe, passiert nichts. Ich habe es versucht, mmv -n
um einige Nachrichten zu erhalten, aber kein Ergebnis. Sogar ein Verzeichnisname wurde geändert, also habe ich den Vorgang nach einer Weile einfach beendet.
Ist zmv
die Cache-Ordnerliste der erste Schritt und werden dann die Namen ersetzt? Ich habe erwartet, dass zmv
die Namen sofort Verzeichnis für Verzeichnis geändert werden.
Soll ich mvv ausführen und einfach ein paar Stunden warten?
Antwort1
zmv
berechnet alle Umbenennungen, bevor es aktiv wird, das von Ihnen beobachtete Verhalten ist also normal.
Einer der Gründe dafür ist, dass ein Fehler auftritt, wenn zwei Dateien auf denselben Namen umbenannt werden sollen. Ein Fehler tritt auch auf, wenn eine Datei auf einen Namen umbenannt werden soll, der bereits existiert. Außerdem versucht das Programm, Fehler frühzeitig zu erkennen, anstatt mittendrin abzubrechen, wenn eine schwer zu ermittelnde Menge bereits umbenannter Dateien vorliegt.