ich baue immernoch an meinem script für rsync.
Ich lese dabei aus einer list, eine reihe von dicts aus in denen die Parameter für rsync stecken. Bis jetzt hat es auch wie erwartet funktioniert, doch nun hab ich mein shebang auf dem mac auf
Code: Alles auswählen
#!/Library/Frameworks/Python.framework/Versions/3.2/bin/python3
Vorher wurde jedes Kommando nach einander ausgeführt. Doch es scheint als würden nun die Positionen gleichzeitig ausgeführt werden, was für mich zur komplikationen führt, da mein rsync-Server eine Limitierung von Verbindungen hat. Doch wie krieg ich das wieder so hin das die Positionen nacheinander ausgeführt werden?
Mein Code:
Code: Alles auswählen
if __name__ == "__main__":
import os
command = "rsync -ac"
eventk = { "Name" : "Eventkatalog",
"Quelle" : "/Volumes/fotos/Veranstaltungen",
"Ziel" : "rsync://jan@192.168.1.2/backup/eventk" }
hauptk = { "Name" : "Hauptkatalog",
"Quelle" : "/Volumes/fotos/Hauptkatalog",
"Ziel" : "rsync://jan@192.168.1.2/backup/hauptk" }
nachtk = { "Name" : "Nachtkatalog",
"Quelle" : "/Volumes/fotos/Nachtclubs",
"Ziel" : "rsync://jan@192.168.1.2/backup/nachtk" }
itunes = { "Name" : "iTunes Library",
"Quelle" : "/Users/Shared/iTunes",
"Ziel" : "rsync://jan@192.168.1.2/backup/itunes" }
auftrk = { "Name" : "Auftragskatalog",
"Quelle" : "/Volumes/fotos/auftrk",
"Ziel" : "rsync://jan@192.168.1.2/backup/auftrk" }
paare = [itunes, eventk, hauptk, nachtk, auftrk]
for i in paare:
#Diese Ebene ist Platzhalter, dort soll noch ein try...except hin kommen.
if True:
print("{} in progress...".format(i["Name"]))
commando = "{} {}/ {}".format(command, i["Quelle"], i["Ziel"])
os.system(commando)
print("...done")
else:
print("Fehler bei Datensatz: {}".format(i["Name"]))
os.system('echo -e "\a"')