7z Datei in Unterverzeichnis einer zip-Datei aktualisieren
Entpacken, aktualisieren und wieder packen wäre eine Alternative aber es muss doch möglich das direkt zu machen
Beispiel:
In der Datei A:\Test.zip gibts Unterordner 1,2,3,4. Im Unterordner 3 befindet sich die Datei erneuern.txt, welche ich aktualisieren möchte. Sie befindet sich in X:\Unterverzeichnis\
so hat's jedenfalls nicht geklappt:
7z u A:\Test.zip\3\ X:\Unterverzeichnis\* erneuern.txt
Beispiel:
In der Datei A:\Test.zip gibts Unterordner 1,2,3,4. Im Unterordner 3 befindet sich die Datei erneuern.txt, welche ich aktualisieren möchte. Sie befindet sich in X:\Unterverzeichnis\
so hat's jedenfalls nicht geklappt:
7z u A:\Test.zip\3\ X:\Unterverzeichnis\* erneuern.txt
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 5219472660
Url: https://administrator.de/contentid/5219472660
Ausgedruckt am: 22.11.2024 um 07:11 Uhr
6 Kommentare
Neuester Kommentar
Servus.
Mit der Powershell geht auch ein direktes Update ohne angelegte Ordnerstruktur:
Grüße Uwe
Mit der Powershell geht auch ein direktes Update ohne angelegte Ordnerstruktur:
$zipfile = 'A:\test.zip'
$updatefile = "X:\Unterverzeichnis\erneuern.txt"
$subpath = '3/erneuern.txt'
#--------------------
Add-Type -AssemblyName System.IO.Compression
Add-Type -AssemblyName System.IO.Compression.FileSystem
# ZIP-Datei im Updatemode öffnen
$zip = [System.IO.Compression.ZipFile]::Open($zipfile,[System.IO.Compression.ZipArchiveMode]::Update)
# evt. schon vorhandene Datei im Archiv aus Unterordner löschen
($zip.Entries | ? Fullname -eq $subpath) | %{$_.Delete()}
# neue Datei zur ZIP-Datei hinzufügen
[void][System.IO.Compression.ZipFileExtensions]::CreateEntryFromFile($zip,$updatefile,$subpath)
# Ressourcen freigeben
$zip.Dispose()
Zitat von @femi1100:
so hat's jedenfalls nicht geklappt:
7z u A:\Test.zip\3\ X:\Unterverzeichnis\* erneuern.txt
so hat's jedenfalls nicht geklappt:
7z u A:\Test.zip\3\ X:\Unterverzeichnis\* erneuern.txt
Hängt von der Art der Komprimierung ab
Wahrscheinlich sind innerhalb der ZIP noch weitere Dateien komprimiert?
Zitat aus 7ziphelp:
Update
This function letter u command is used to replace old files in your archive with newer files. The “u” command stands for update. This command prevents needing to decompress and recompress the entire archive. This command will not work with solid archives. Using the command on the terminal looks like this:
7z u example.zip *.doc
Zitat von @femi1100:
Was soll man blos unter "SOLIDES Archiv" verstehen?
Es ist kein zip in zip enthalten. Linux binaries für Receiver und diverse scripts, also Textdateien sind enthalten.
Was soll man blos unter "SOLIDES Archiv" verstehen?
Es ist kein zip in zip enthalten. Linux binaries für Receiver und diverse scripts, also Textdateien sind enthalten.
Was als "solid archive" gilt, kann man über die verschiedenen Such-Tools herausfinden.
Es reicht schon, wenn eine der gepackten Dateien einen zusätzlichen Datenstrom hat, oder eben auch die Art der Komprimierung von der üblichen abweicht.
Kann auch sein, dass sich die Update-Routine an etwas anderem stört ... ohne weitere Infos und Analysen ist es schwer eine klare Antwort zu geben.
Ich würde es binär ausschließen, also erst einmal nur die Scripte packen und updaten.
Funktioniert das sauber, dann eben die Linux Binaries packen und updaten.
and so on ...
Viel Erfolg
.