Sha256: 4fc880e73fe9b6375c24e593719e3b9f2ef81336068cdbe281e59a80f742a4ab
Contents?: true
Size: 1.36 KB
Versions: 9
Compression:
Stored size: 1.36 KB
Contents
trap { $e = $_.Exception $e.InvocationInfo.ScriptName do { $e.Message $e = $e.InnerException } while ($e) break } function folder($path){ $path | ? {-not (test-path $_)} | % {$null = mkdir $_} } Function Decode-Files($hash) { foreach ($key in $hash.keys) { $value = $hash[$key] $tzip, $dst = $Value["tmpzip"], $Value["dst"] if ($tzip) {Unzip-File $tzip $dst} New-Object psobject -Property @{dst=$dst;src_md5=$key;tmpzip=$tzip} } } Function Unzip-File($src, $dst) { $unpack = $src -replace '\.zip' $dst_parent = Split-Path -Path $dst -Parent if(!(Test-Path $dst_parent)) { $dst = $dst_parent } folder $unpack, $dst try { try{ [IO.Compression.ZipFile]::ExtractToDirectory($src, $unpack) } catch { Add-Type -AssemblyName System.IO.Compression.FileSystem -ErrorAction Stop [IO.Compression.ZipFile]::ExtractToDirectory($src, $unpack) } } catch { Try { $s = New-Object -ComObject Shell.Application ($s.NameSpace($unpack)).CopyHere(($s.NameSpace($src)).Items(), 0x610) } Finally { [void][Runtime.Interopservices.Marshal]::ReleaseComObject($s) } } dir $unpack | cp -dest "$dst/" -force -recurse rm $unpack -recurse -force } $hash_file = <%= hash_file %> Decode-Files $hash_file | ConvertTo-Csv -NoTypeInformation
Version data entries
9 entries across 9 versions & 2 rubygems