Zip Entpacken Dateinamen auslesen und restlichen Dateien mit Prefix umbennen
Ich habe mehrer Zip Dateien in einem Ordner (C:\zip), die als Inhalt jeweils 2 Ordner mit Dateien haben.
Hier die Struktur der Zip Dateien
Ordner: Plot (Hier liegeben *.Tiff Dateien)
Ordner: Image (Hier liegt eine Datei mit zB. dem Namen 1234.plt)
Jetzt soll die Datei entpackt werden und der Dateiname der .plt Datei als Prefix mit einem Punkt vor die Tiff Dateien geschrieben werden.
So sollte es entpakt dann aussehen (in C:\Unzip).
Ordner: Plot (1234.abc.Tiff, 1234.def.Tiff, usw.)
Ordner: Image (1234.plt)
Kann mir hier einer ein Script basteln ? Vielen Dank
Hier die Struktur der Zip Dateien
Ordner: Plot (Hier liegeben *.Tiff Dateien)
Ordner: Image (Hier liegt eine Datei mit zB. dem Namen 1234.plt)
Jetzt soll die Datei entpackt werden und der Dateiname der .plt Datei als Prefix mit einem Punkt vor die Tiff Dateien geschrieben werden.
So sollte es entpakt dann aussehen (in C:\Unzip).
Ordner: Plot (1234.abc.Tiff, 1234.def.Tiff, usw.)
Ordner: Image (1234.plt)
Kann mir hier einer ein Script basteln ? Vielen Dank
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 617235
Url: https://administrator.de/forum/zip-entpacken-dateinamen-auslesen-und-restlichen-dateien-mit-prefix-umbennen-617235.html
Ausgedruckt am: 15.04.2025 um 10:04 Uhr
3 Kommentare
Neuester Kommentar
PowerShell
Steffen
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
[Reflection.Assembly]::LoadWithPartialName('System.IO.Compression.FileSystem') | Out-Null
$src = 'C:\zip'
$dst = 'C:\unzip'
gci $("$src\*.zip") -file | %{
$zip = [IO.Compression.ZipFile]::OpenRead($_)
$prefix = $zip.Entries.Name | sls -pattern '^(.+)\.plt$' | %{$_.matches.groups[1].value} | select -f 1
$tiffs = $zip.Entries.Name | sls -pattern '^.+\.tiff$' | %{$_.matches.value}
$zip.Dispose()
Expand-Archive $_ -DestinationPath $dst -Force
$tiffs | %{ren $("$dst\Plot\$_") $("$prefix.$_")}
}