Wie verwende ich rsync aus einem Python-Skript heraus? [geschlossen]

7

Ich plane, Dateien von einem System auf ein anderes zu verschieben. Dafür verwende ich den Befehl rsync im Linux-Terminal. Es funktioniert gut. Aber ich muss diesen Befehl in Python implementieren. Ich bin sehr neu in Python, daher kenne ich die Definition des Befehls rsync nicht. Bitte teilen Sie die Schritte zur Definition mit. Dies ist mein rsync-Befehl:

rsync -avrz /opt/data/filename root@ip:/opt/data/file

Ich muss diesen Befehl in einem Python-Skript implementieren.

Viswa
quelle
4
Ist das Ubuntu-spezifisch? Wenn nicht, sollte es nach StackOverflow migriert werden.
Nanofarad
1
Allgemeine Programmierfragen, die sich nicht speziell auf Ubuntu beziehen, sind hier nicht zum Thema. Vielleicht möchten Sie unsere Freunde in Stack Overflow um Hilfe bitten .
Jokerdino
1
Dies scheint eine Programmierfrage zu sein, die auf eine Systemverwaltungsaufgabe angewendet wird . Aus diesem Grund würde ich vorschlagen, dass es hier zum Thema gehört (und besser zu unserer Site passt als zu Stack Overflow). Ich denke nicht, dass wir diese Frage schließen sollten.
Eliah Kagan

Antworten:

11
import os
os.system("rsync -avrz /opt/data/filename root@ip:/opt/data/file")

Hast du das versucht?
os.systemGrundsätzlich können Sie bashBefehle ausführen.

Shelby. S.
quelle
6
Schauen Sie sich stattdessen das Unterprozessmodul an, in dem die Shell-Unterstützung standardmäßig deaktiviert ist.
Gringo Suave
3

Wie die Antwort auf Ihre vorherige ähnliche Frage andeutet, rsyncfunktioniert dies als Shell-Befehl in Python einwandfrei, wenn Sie anstelle eines Kennworts SSH-Schlüssel zur Authentifizierung verwenden . Wenn Sie weitere Hilfe beim Einrichten der SSH-Schlüssel-basierten Authentifizierung benötigen, bearbeiten Sie Ihre Frage.

izx
quelle