![Name des Skripts, mit dem Sie Dateien verschieben können, indem Sie ihre Pfade in einem Texteditor bearbeiten?](https://rvso.com/image/1692514/Name%20des%20Skripts%2C%20mit%20dem%20Sie%20Dateien%20verschieben%20k%C3%B6nnen%2C%20indem%20Sie%20ihre%20Pfade%20in%20einem%20Texteditor%20bearbeiten%3F.png)
Ich erinnere mich an ein Skript, das folgendermaßen funktionierte: Es ermöglichte das Verschieben von Dateien in einem Verzeichnis, indem es alle Dateipfade aller Dateien im Verzeichnis in einem Texteditor öffnete. Anschließend konnte man die Dateipfade in einem Texteditor bearbeiten und beim Verlassen des Texteditors wurden die Dateien umbenannt.
Ich kann dieses Skript nicht finden. Weiß jemand, wie es heißt? Ich glaube, es war Teil einer Sammlung von Shell-Skripten.
Antwort1
vidir
ermöglicht Ihnen, Dateinamen in einem Texteditor zu bearbeiten. Um einen Editor auszuwählen, legen Sie die EDITOR
Variable fest. In Debian oder Ubuntu vidir
ist es im moreutils
Paket enthalten.
Dies ist, was vidir
tun kann (Auszug aus man 1 vidir
):
Beim Bearbeiten eines Verzeichnisses wird jedes Element im Verzeichnis in einer eigenen nummerierten Zeile angezeigt. Anhand dieser Nummern
vidir
können Sie verfolgen, welche Elemente geändert wurden. Löschen Sie Zeilen, um Dateien aus dem Verzeichnis zu entfernen, oder bearbeiten Sie Dateinamen, um Dateien umzubenennen. Sie können auch Nummernpaare austauschen, um Dateinamen zu vertauschen.
Dort steht „Dateinamen bearbeiten, um sie umzubenennen“, aber das Tool kann noch mehr. Durch Bearbeiten ganzer Pfadnamen können Sie Dateien in andere Verzeichnisse verschieben, sogar in Verzeichnisse, die noch nicht existieren ( vidir
wir versuchen, sie zu erstellen).
Nach dem Bearbeiten müssen Sie die Textdatei speichern und den Editor ordnungsgemäß beenden, nur dann vidir
wird er seine Aufgabe erfüllen. vidir
bewirkt nichts, wenn Sie die Datei nicht ändern (dazu gehört auch das Speichern unter einem anderen Namen oder an einem anderen Ort) oder wenn der Editor mit einem Fehler beendet wird (d. h. mit einem Exit-Status ungleich Null). Das Beenden des Editors ohne Speichern der Datei oder das Abstürzen des Editors selbst nach dem Speichern der Datei (Beispiel) sind Möglichkeiten zum Abbruch.
Wenn Sie befürchten, dass irgendwo ein Pfadname mit Tabulator oder Zeilenumbruchzeichen vorhanden ist und dadurch etwas kaputt geht, vidir
bleiben Sie ruhig. Soweit ich weiß, vidir
wird es sich von vornherein weigern, mit einem solchen Pfadnamen zu arbeiten.
Beispiele:
-
arbeitet mit dem Inhalt des aktuellen Arbeitsverzeichnisses, wechselt jedoch nicht in Unterverzeichnisse.vidir
-
arbeitet mit dem Inhalt des ausgewählten Verzeichnisses, wechselt jedoch nicht in Unterverzeichnisse.vidir /chosen/directory
-
funktioniert mit allem, wasvidir *.mp3
*.mp3
erweitert wird. Dies kann eigenartig sein, wenn es keine Entsprechung gibt; siehe den Anfang vondiese Antwort. -
arbeitet mit Pfadnamen, die von bereitgestellt werden,find . -type f | vidir -
find
was im Allgemeinen ein sehr mächtiges Werkzeug ist (siehe "Theorie" indiese Antwort von mir). Beachten Sie, dass standardmäßigfind
in Unterverzeichnisse gewechselt wird. -
funktioniertEDITOR=kate vidir …
vidir …
und verwendetkate
wie der Editor.