Парочка полезных сниппетов для PowerShell

Нужен был скрипт, для загрузки последней сборки в zip архиве и распаковки содержимого в каталог с сайтом. Пока писал нашёл для себя пару полезных сниппетов.

Распаковка Zip архива

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, 16)
    }
}

Логинимся на сайте и загружаем файл

function DownloadFile($user, $password, $url, $destination)
{
    If (Test-Path $destination) {
        Remove-Item $destination
    }
    $client = new-object System.Net.WebClient
    $client.Credentials = 
        new-object System.Net.NetworkCredential($user, $password)
    $client.DownloadFile($url, $destination)
}

Вообще, powerShell довольно мощная штука. Жаль мне не удалось найти способа удалённо работать с ним из linux, так бы ему цены не было.

*****
Написал Shelomentsev Dmitriy 28 December 2015