2017-02-10 7 views
1

Ich habe ein OneDrive-Konto und ein Dropbox-Konto. Ich verwende eine Batch-Datei, um meine Ordner & Dateien an die entsprechenden Stellen zu kopieren.Bestimmen OneDrive Sync-Status aus Batch-Datei

Am Anfang der Batch-Datei verwende ich SYSINTERNALS PSSUSPEND Befehl, um Dropbox zu suspendieren. Wenn OneDrive dann vollständig synchronisiert ist, kann ich Dropbox mit SYSINTERNALS fortsetzen.

Ich benutze derzeit eine Verzögerungstaktik vor dem Fortsetzen, aber es wäre besser, wenn ich genau wüsste, wann OneDrive fertig war.

Ich könnte die Synchronisationen umkehren, aber ich weiß auch nicht, wie man den Sync-Status für Dropbox bestimmt.

+0

auf der Suche nach einer besseren Auflösung, aber in der Zwischenzeit, für Dropbox gibt es dieses Python-Skript, das aussieht, als könnte es funktionieren: http://www.dropboxwiki.com/dropbox-addons/python-script-to-get- Datei-oder-Ordner-Status-in-Windows – nephi12

Antwort

1

Späte Antwort, aber vielleicht hilft es jemandem.

Eine dumme einfache Lösung, die ich habe gerade herausgefunden mich:

Check out
%LocalAppData%\Microsoft\OneDrive\logs\Personal\ 

(für Windows, ähnliche Benutzerordner in anderen OSes)

Es gibt eine SyncDiagnostics.log Datei.

Es wird aktualisiert, wenn OneDrive synchronisiert, den Status und die Zuordnung von Online-Dateien überprüft und wenn die Synchronisierung abgeschlossen ist. (Ein kleiner Nachteil, aber: Microsoft Onedrive wird das Protokoll nicht aktualisieren, wenn die einzige Datei zu synchronisieren durch eine Datei-Handle blockiert.)

Zum Beispiel könnten Sie für Dateiänderung überprüfen und prüfen dann die Variable

SyncProgressState: 

Meiner Erfahrung nach zeigt es 0 für fertig und 255 für die Synchronisierung. Es gibt auch andere interessante Variablen, die Sie verwenden können, wie FilesToDownload und FilesToUpload und so weiter.

Verwandte Themen