Ich rufe den zip-Befehl von einem Skript aus auf, in dem ich das Verzeichnis nicht ändern kann. Ich muss data/kit123/aus dem Verzeichnis, in dem sich die Daten befinden , eine Zip-Datei des Materials erstellen , aber ich möchte, dass der Inhalt der Zip-Datei nur der Inhalt von ist kit123, mit Pfaden relativ zu kit123.
Dies ist die Verzeichnisstruktur
myworkingdir
data
kit123
kitpart1
file.xcf
anotherfile.xcf
kitpart2
...
kit124
...
Mein Skript wird in myworkingdir ausgeführt und kann keine Verzeichnisse ändern.
Wenn ich anrufe
zip -r kit123.zip data/kit123
dann wird die Struktur in der zip-Datei sein
data
kit123
kitpart1
file.xcf
anotherfile.xcf
kitpart2
aber ich möchte, dass es so ist
kit123
kitpart1
file.xcf
anotherfile.xcf
kitpart2
Gibt es eine Zip-Option, die ich verwenden kann, um dies zu erreichen? Es scheint seltsam, dass es von meinem Arbeitsverzeichnis abhängen sollte
Ich weiß, dass es nicht -j ist. dass man die Struktur in kit123 zerstört
zipfile.write(arcname=erlaubt es übrigens: docs.python.org/3.6/library/zipfile.html#zipfile.ZipFile.write