Verschiebe alle Dateien im Verzeichnis mit node.js auf übergeordnete Elemente

8

Frage

Gibt es eine einfache Möglichkeit, alle Dateien in einem Verzeichnis in das übergeordnete Verzeichnis zu verschieben und dann das Verzeichnis zu löschen?

Anwendungsfall

Ich mache eine Zip-Extraktion und die Quell-ZIP enthält einen Stammordner namens archive . Wenn ich also extrahiere, bekomme ich extract_path/archive/ , aber ich möchte nur den Inhalt von archive direkt in% extrahieren co_de%.

Ich dachte, dies wäre eine einfache Umbenennung, aber das Folgende wirft eine Fehlermeldung "Es ist eine Datei im Weg".

%Vor%     
Ralph Callaway 10.10.2014, 03:51
quelle

2 Antworten

4

Verwenden Sie das Modul mv npm. mv versucht zuerst einen fs.rename, und falls dies fehlschlägt, verwendet copy und dann unlink:

%Vor%

oder spawn einen Kindprozess:

%Vor%     
xShirase 10.10.2014, 03:59
quelle
3

Die ausgewählte Antwort funktioniert nicht:

%Vor%

Es ist fehlerhaft mit:

%Vor%

Verwenden Sie fs-extra anstelle von mv:

%Vor%

Meine Dateistruktur ist vor dem Verschieben so:

%Vor%

Und so nach dem Umzug:

%Vor%

UPDATE:

Während das obige unter Windows funktioniert, bekomme ich unter Linux den gleichen Fehler, selbst wenn ich fs-extra benutze. Im Folgenden finden Sie eine manuelle Lösung dafür, indem Sie jedes Unterverzeichnis des Unterverzeichnisses einzeln an das übergeordnete Element verschieben. Wenn eine untergeordnete Verschiebung fehlschlägt, werden alle anderen erfolgreichen Verschiebungen an den ursprünglichen Speicherort im Unterverzeichnis zurückgesetzt.

%Vor%     
user2426679 12.06.2017 05:28
quelle

Tags und Links