Sie müssen Dateien im Verzeichnis vergleichen und ähnliche Dateien löschen (das ist aber komplizierter als üblich)

Sie müssen Dateien im Verzeichnis vergleichen und ähnliche Dateien löschen (das ist aber komplizierter als üblich)

also ich habe in meiner Arbeitsumgebung ein ziemlich merkwürdiges Bedürfnis und habe große Schwierigkeiten, es herauszufinden. Ich werde versuchen, es so kurz und bündig wie möglich zu machen, aber einige Hintergrundinformationen sind der Schlüssel, um zu erklären, warum die Dinge schwierig sind. Außerdem geschieht das alles in einer Windows-Umgebung, da das wahrscheinlich wichtig ist, lol.

Ich brauche also eine Möglichkeit, PDFs nach der Bearbeitung automatisch in bestimmte Ordner zu verschieben. Dazu plane ich, dass die Benutzer die PDFs bearbeiten, dann speichern unter und am Ende einen Brief anhängen. Etwas wie AB111d würde in den Ordner „Erledigt“ wandern, aber wenn es AB111u wäre, würde es beispielsweise in den Ordner „Unerledigt“ wandern. Ich habe das bereits über Robocopy herausgefunden, es ist ganz einfach.

Und hier kommt das Problem ins Spiel: Die Dateien sind bereits entsprechend der von uns benötigten Benennungsstruktur benannt, wenn sie in den Hauptordner gelegt werden, sodass der Benutzer NICHT die gesamte Datei umbenennen muss, sondern nur einen Buchstaben anhängen kann (Geschwindigkeit ist hier entscheidend, daher wäre das Eintippen eines vollständigen Namens sehr zeitaufwendig, wenn diese Benutzer dies hunderte Male am Tag tun). Aber ich muss AUCH die Originaldatei im Verzeichnis löschen (oder verschieben würde auch funktionieren), die den angehängten Buchstaben nicht hat.

Beispiel: Ein Benutzer öffnet AB111, arbeitet daran, speichert unter und benennt es in AB111d um. Das von mir verwendete Robocopy-Skript verschiebt AB111d in den Ordner „Erledigt“, aber AB111 ist immer noch dort. Diese ursprüngliche AB111-Datei ist die Datei, die ich irgendwie löschen muss (oder verschieben muss, sie darf sich nur nicht im Arbeitsordner des Benutzers befinden, damit dieser weiß, dass er bereits fertig ist). Unabhängig davon, ob dies per Skript erfolgt oder zum Zeitpunkt des Speicherns unter geschehen kann, würde beides funktionieren.

Gibt es eine Möglichkeit, beispielsweise Dateien in einem Verzeichnis zu vergleichen, aber OHNE den angehängten Buchstaben? So könnte ich dann beispielsweise das Arbeitsverzeichnis mit dem Fertigverzeichnis vergleichen, aber ohne das angehängte „d“ an den Dateien im Fertigverzeichnis. Und dann die Originaldatei löschen/verschieben.

Letzter Hinweis: Dies alles muss per Skript automatisiert werden und darf höchstens alle 5 Minuten erfolgen.

Antwort1

Robocopy hat die Möglichkeit:

/mov    Moves files, and deletes them from the source after they are copied.

Wenn Sie Dateien ausschließen müssen, die im Ziel, aber nicht in der Quelle vorhanden sind, werden diese als „zusätzliche Dateien“ bezeichnet. Durch das Ausschließen zusätzlicher Dateien wird jegliches Löschen aus dem Ziel verhindert. Die Option hierfür ist:

/xx     Excludes extra files and directories.

verwandte Informationen