Hvordan trekke ut ZIP-filer ved hjelp av PowerShell
Vi har sett dette spørsmålet mange ganger på Stack Overflow og fora, men mesteparten av tiden anbefaler folk å bruke PowerShell Community Extensions eller en eldre kommandolinjeprogram. Sannheten blir fortalt, det er egentlig ikke alt det vanskelig å gjøre i PowerShell.
$shell = new-object -com shell.application $zip = $shell.NameSpace(“C:howtogeeksite.zip”) foreach($item in $zip.items()) { $shell.Namespace(“C: emphowtogeek”).copyhere($item) }
Hardcoding verdier er ikke veldig ideell, slik at vi får det til en rask funksjon.
function Expand-ZIPFile($file, $destination) { $shell = new-object -com shell.application $zip = $shell.NameSpace($file) foreach($item in $zip.items()) { $shell.Namespace($destination).copyhere($item) } }
Da kan vi bare bruke funksjonen slik:
Expand-ZIPFile –File “C:howtogeeksite.zip” –Destination “C: emphowtogeek”
Husk å legge til dette i Windows PowerShell-profilen din, slik at du ikke trenger tredjepartsbiblioteker for funksjonalitet som allerede er inkludert i boksen.