Kopieren Sie eine große Anzahl von Dateien, schließen Sie jedoch bestimmte Unterordner unter Windows aus


14

Ich möchte meinen Arbeitsordner sichern, der hauptsächlich in einer Ordnerstruktur enthalten ist, wie z.

www
    - project 1
        - assets
        - node_modules
    - project 1
        - assets
        - node_modules
    - project 1
        - assets
        - node_modules

Ich muss alle Projekte kopieren, aber den Ordner node_modules in jedem Projekt ausschließen. Gibt es eine einfache Möglichkeit, dies in großen Mengen zu tun? Da habe ich große Mengen an Projekten zu durchlaufen.

Laufen unter Windows 8.1


Schauen Sie sich diese Frage an: superuser.com/questions/359031/… . In der Frage selbst ist Ihre Antwort.
Angus

Antworten:


12

Ich muss alle Projekte kopieren, aber den Ordner node_modules ausschließen

Sie können xcopyzusammen mit der excludeOption verwenden:

xcopy www backup /exclude:except.txt
  • except.txt enthält die Liste der Dateien der auszuschließenden Verzeichnisse.

Except.txt:

node_modules

/EXCLUDE:file1[+file2][+file3]...

  • Die Dateien können jeweils einen oder mehrere vollständige oder teilweise Pfadnamen enthalten, die ausgeschlossen werden sollen.
  • Wenn einer dieser Werte mit einem Teil des absoluten Pfads einer SOURCE-Datei übereinstimmt, wird diese Datei ausgeschlossen.
  • Wenn Sie beispielsweise eine Zeichenfolge wie \obj\oder .objangeben, werden alle Dateien unter dem Verzeichnis objoder alle Dateien mit der .objErweiterung ausgeschlossen.

Quell- xcopy - Kopieren Sie Dateien und / oder Verzeichnisbäume in einen anderen Ordner.


Weiterführende Literatur


Super, danke, ich werde es versuchen. Ich fand auch folgendes: robocopy SOURCE DESTINATION /mir /xd FOLDER_TO_EXCLUDE- Ich nehme an, es könnte auch funktionieren?
Doidgey

Ziemlich wahrscheinlich. Ich kenne Robocopy allerdings nicht: / Bitte vergessen Sie nicht, meine Antwort zu akzeptieren;)
DavidPostill

Probieren Sie robocopyes aus - es wurde entwickelt, um die gleichen Befehlsoptionen zu unterstützen xcopy, bietet jedoch viele Verbesserungen - Unterstützung für lange Pfade, Pufferung, Unicode, Beibehaltung von Zeitstempeln usw. usw. Robocopyist seit Windows Teil von Windows und kann unter XP installiert werden.
user1016274

Dieser Befehl hat keinen Unterordner aus meiner Quelle kopiert, sondern nur Dateien in diesem Ordner.
Qwerty

@DavidPostill Muss ich die Verzeichnisse, die ich ausschließen möchte, ernsthaft in eine Textdatei einfügen und dann im Befehl auf diese Textdatei verweisen? Kann ich nicht einfach direkt sagen, welche Verzeichnisse ich ausschließen möchte? Ich denke robocopyist besser.
Shayan

9

Vielen Dank an @DavidPostill für seine Antwort. Es war ein Vergnügen. Ich habe es aber auch geschafft, Robocopy zum Laufen zu bringen. Für diejenigen, denen es helfen könnte, war der Befehl:

robocopy SOURCE DEST /mir /xd node_modules

Quelle ist der zu kopierende Ordner und Ziel ist das Ziel. Und ganz am Ende habe ich node_modules als Ordner, den ich ausschließen möchte.


3
Gut, alter Mann robocopy /mir. Sehr leistungsfähiger Schalter, der viel Gutes bewirken kann. Beachten Sie jedoch, was dieser Schalter bewirkt, bevor Sie ihn verwenden. Es werden zwei Verzeichnisse synchronisiert, einschließlich des Löschens von Elementen, wenn diese nicht im Quellverzeichnis vorhanden sind.
Adam Plocher

Ich danke dir sehr! Dies funktioniert sehr gut für die Synchronisierung meines Dokumentenordners mit Dropbox, jedoch ohne die Ordner node_modules, da sie so viel Platz beanspruchen
Ben Gubler

1
@AdamPlocher Ihr Kommentar hat mich vor Datenverlust bewahrt. Ich habe Robocopy als Ersatz für das Verschieben von Ordnern verwendet. Mir ist nicht in den Sinn gekommen, dass Dateien aus dem Zielordner gelöscht werden. Zum Glück konnte ich ein Backup von vor 4 Tagen wiederherstellen, also danke.
Hay
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.