Wie verwende ich die Pfadoption von unisono mit mehreren Pfaden?

13

Ich möchte die folgenden Speicherorte mit unisono synchronisieren:

  • / home / user / Hörbücher mit / shared / Hörbücher
  • / home / user / Musik mit / shared / Musik
  • / home / user / Podcasts mit / shared / Podcasts

Was wären die unisono Kommandozeilenparameter? Aufgrund dessen kann ich raten

Wenn eine oder mehrere Pfadeinstellungen angegeben sind, synchronisiert Unison nur diese Pfade und ihre untergeordneten Pfade. (Dies ist beispielsweise nützlich, um eine schnelle Synchronisierung von nur einem Verzeichnis durchzuführen.) Beachten Sie, dass die Pfadeinstellungen wörtlich interpretiert werden - es handelt sich nicht um reguläre Ausdrücke.

Hier ist meine Vermutung. Ist das korrekt?

unison -ui text /home/user /nocrypt/Shared -path Audiobooks -path Music -path Podcasts 

Ich könnte auch ein Profil verwenden. Ich habe die Hilfedokumente gelesen und ein Beispiel gefunden, das ich angepasst habe. Ich bin mir jedoch nicht sicher, ob es richtig ist.

Geändert von den Hilfedokumenten: Hier ist ein komplexeres Profil, das einige andere nützliche Funktionen veranschaulicht.

# Roots of the synchronization
root = /home/user
root = /shared

# Paths to synchronize 
path = Audiobooks
path = Music
path = Podcasts

Ist das korrekt?

Als ich mit dem Schreiben dieser Frage fertig war, habe ich es so ziemlich herausgefunden. Ich denke, beide oben genannten Methoden sind korrekt. Das Tolle an unison ist, dass Sie einen "Trockenlauf" genauso durchführen können, wie Sie eine tatsächliche Synchronisierung durchführen würden. Die Standardaktion ist immer "keine Aktion" (nachdem alle Änderungen angezeigt wurden). Ich werde es jetzt testen und sehen, ob es funktioniert. Ich glaube, ich brauche keine Antwort, aber ich lasse diese Frage hier als Referenz (und beantworte sie selbst mit der Bestätigung, ob dies funktioniert hat oder nicht).

MountainX
quelle

Antworten:

5

Ja, ich bestätige, dass meine Angaben in der Frage korrekt sind.

MountainX
quelle
hahahahaha diese frage ist komisch. Funktioniert dies als Parameter für die GUI-Profile, da es sich im Grunde nur um Befehlszeilensätze handelt?
Heller Stern
6
Dies könnte durch Überarbeiten verbessert werden, sodass die Frage wie eine Frage und ebenfalls zur Beantwortung lautet.
Verdächtiger
1

Wie Ihre Frage poste ich dies als Referenz.

Sie können Variablen mischen und zuordnen. Wenn Sie beispielsweise Shell-Variablen verwenden möchten , beginnen Sie wie gewohnt mit einem Profil, übergeben jedoch beim Aufrufen des Befehls die Argumente, die Shell-Variablen enthalten. Dies liegt daran, dass Sie diese Variablen normalerweise nicht in einer Profildatei verwenden können.

root = $HOMEscheint zu funktionieren, aber in root = ssh://host//$HOME, $HOMEnicht als Variable erkannt.

Beispiel documents.prf:

# select folders
  path = Documents
  path = Desktop
# options
  batch = true

Der Befehl, den Sie dann verwenden könnten, würde ungefähr so ​​aussehen:

unison documents -root $HOME -root ssh://user@remotehost//home/$USER
jhat
quelle
1

Sie können es so benutzen, dass root das root-Verzeichnis ist und Sie alle Pfade definieren können, was Sie wollen.

# Roots of the synchronization
root = /
root = ssh://x.x.x.X//

# Paths to synchronize
path = /etc/httpd
path = /var/www
Akshay kumar
quelle