Ich kann dies zum Funktionieren bringen, wenn ich ein Array für meine $destination
einrichten, aber dies erstellt eine separate. Zip für jedes ausgewählte Verzeichnis.System.IO.Compression.ZipFile mehrere Verzeichnisse
Wie kann ich jedes Verzeichnis auswählen und unter einem einzigen Ziel zippen statt mehrere Zieldateien? Hier ist mein Code:
$type = "*.txt"
$destination = "LogsBackup.zip"
Add-Type -Assembly "System.IO.Compression.FileSystem" ;
$_sources = dir c:\Logs\$type -Recurse | Select Directory -Unique |
Out-GridView -OutputMode Multiple |
Select @{Name="Path";Expression={$_.Directory -As [string]}}
for ($i = 0; $i -lt $_sources.Length; $i++)
{
$compressionLevel = [System.IO.Compression.CompressionLevel]::Optimal
[System.IO.Compression.ZipFile]::CreateFromDirectory($_sources[$i].Path , $destination)
}
Ich möchte meine Out-GridView
Option, um die Art und Weise halten es so ist, wenn es sich um ein einzelnes Verzeichnis oder mehrere, das ich ihnen auswählen und speichern sie als Array zurück.
Wenn Sie auf PowerShell v5 sind, kann dies ziemlich einfach durchgeführt werden. – Kiran
Ja seine Powershell v5 –