rsync: Nur eine Aufruf-Variante für das neue und alte rsync
X-Post: https://unix.stackexchange.com/q/715216/136851
Hallo Zusammen,
gibt es evtl. eine Debian-Liste die thematisch besser zu meiner Frage
passen könnte?
Mit rsync Version 3.2.4 wurde eine Verhaltensänderung [1] eingeführt,
die mit der "arg protection" zu tun hat. Das spielt eine Rolle, wenn man
Leerzeichen in den Pfaden hat.
Der Workaround mit dem Schalter "--old-args" bewirkt, dass alte Skripte
auch mit dem neuen rsync ohne weitere Änderungen zusammenarbeiten.
Mein Ziel ist es aber, meine alten rsync-Scripte so abzuändern, dass sie
mit allen rsync Versionen bzw. unabhängig von der Version funktionieren.
Dabei möchte im Script keine Überprüfung der Version vornehmen müssen
und entsprechend zwei Aufrufvarianten für rsync konstruieren.
Eine Idee habe ich schon, jedoch verstehe ich nicht alle Details des
"Problems", um die Güte meiner Lösung beurteilen zu können.
Bisher habe ich die Aufrufe so gestaltet:
rsync -aiv host:"a simple file.pdf" .
Das würde ich derart ändern, dass ich die doppelten durch einfache
Anführungszeichen ersetze und den Schalte (-s) hinzufüge.
rsync -aiv host:'a simple file.pdf' . -s
Der Schalter steht bisher für "--protect-args" (das es auch schon in
alten rsync Varianten gab). Ab Version 3.2.6 soll der Schalter in
"--secluded-args" umbenannt werden.
Soweit ich das durchblicke, funktioniert meine Lösung mit rsync 3.2.3
und früher/alter und auch mit 3.2.4 und höher/jünger.
Wie schätzt ihr das ein?
Upstream konnte ich bisher nicht fragen, da der Moderator der
rsync-Mailingliste die subscriptions derzeit nicht abarbeitet. Auch im
IRC bekam ich bisher keine verwertbare Reaktion.
Besten Dank
Christian
[1] --
<https://download.samba.org/pub/rsync/NEWS.html#BEHAVIOR_CHANGES-3.2.4>
[2] --
<https://download.samba.org/pub/rsync/NEWS.html#ENHANCEMENTS-3.2.6>
Reply to: