gearloose 10 Geschrieben 9. Februar 2011 Melden Geschrieben 9. Februar 2011 Hallo, ich bin gerade dabei ein Script zum Zippen von Verzeichnissen zu erstellen. Leider fehlt mir da ein Baustein. Das Script wechselt in einen Ordner und ruft alle Unterordner auf und macht mit 7-zip Archive daraus. Allerdings bekomme ich dann bei 7 Unterordner dann auch 7 Prozesse die gleichzeitig ablaufen. Bei 40 Unterordnern mit ordentlich Datei kann ich mir ein Spiegelei aufm Notebook backen, allerdings kann ich den ganzen Tag leider nicht nur fressen sondern muss auch arbeiten. Wie bekomme ich eine Abarbeitung im Einzlnen hin? CD *pfad* Get-ChildItem | foreach-object -Process {C:\Programme\7-Zip\7zG.exe a -tzip $_".zip" $_}
blub 115 Geschrieben 9. Februar 2011 Melden Geschrieben 9. Februar 2011 Hallo, Es gibt ein Write-zip bei den Communityextensions unter http://pscx.codeplex.com/ google mal nach "write-zip pscx" . Vielleicht gehts damit besser, ich habe write-zip selbst noch nicht probiert, aber schon andere cmdlets aus dem Paket. Normal sind die gut. blub
Dukel 468 Geschrieben 9. Februar 2011 Melden Geschrieben 9. Februar 2011 Wie wärs, wenn du die CLI version von 7Zip nutzt. Diese macht das per Default, da kein extra Prozess aufgeht.
gearloose 10 Geschrieben 9. Februar 2011 Autor Melden Geschrieben 9. Februar 2011 Spitze das geht prima! Vielen Dank! Da war wohl ein G zuviel im Script :)
Dukel 468 Geschrieben 9. Februar 2011 Melden Geschrieben 9. Februar 2011 Dank für die Rückmeldung. Ich würde mir evtl. die Backgroundjobs von Powershell anschauen. Damit kann man das doch paralellisieren und somit bei Mehrkern Prozessoren die Leistung verbessern bzw. die Laufzeit des Scriptes verkleinern. Bei 40 Unterordnern und 4 Kernen würde ich 4 Packprozesse laufen lassen und du brauchst nur 10x so lange und nicht 40x so lange wie bei einem Ordner.
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden