2016-05-24 5 views
4

Задача
Я пишу сценарий в PowerShell, который загружает файл на http-сервер. Загрузка завершена успешно, но при ее выполнении она возвращает кучу чисел в консоли (гораздо больше, чем показано ниже).Сценарий PowerShell, возвращающий неожиданный вывод (случайные числа)

Выход: enter image description here

Вот сценарий, я бегу:

Param([Parameter(Mandatory=$True,Position=1)] 
     [string]$user, 
    [Parameter(Mandatory=$True,Position=2)] 
     [string]$pass, 
    [Parameter(Mandatory=$True,Position=3)] 
     [string]$dir, 
    [Parameter(Mandatory=$True,Position=4)] 
     [string]$fileName, 
    [Parameter(Mandatory=$True,Position=5)] 
     [string]$url 
) 

$filePath = ("$dir" + "$fileName") 

$webClient = New-Object System.Net.WebClient; 
    $webClient.Credentials = New-Object System.Net.NetworkCredential("$user", "$pass"); 
    ("*** Uploading {0} file to {1} ***" -f ($filePath, $url)) | write-host -ForegroundColor Blue -BackgroundColor White 
    $webClient.UploadFile($url, "PUT", $filePath); 

Вопрос
Где эти цифры приходят, и как их подавить?

+0

Я использую версию PowerShell 5 – ITSUUUUUH

ответ

3

Похоже, что цифры выводятся с $webClient.UploadFile. Попробуйте добавить > $null после него, как это:

$webClient.UploadFile($url, "PUT", $filePath) > $null; 

Это должно направить вывод в нуль, что делает эти цифры не отображаются. К сожалению, я не могу сам проверить эту ситуацию.

+1

Спасибо! Это сработало отлично и не подавляет сообщение, которое я хотел его отобразить (*** Uploading ... ***). – ITSUUUUUH

+0

У меня была такая же проблема. UploadFile - это метод на веб-клиенте, поэтому я не понимаю, откуда эти нолики. –