2016-05-24 80 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

謝謝!這工作完美,並沒有抑制我希望它顯示的消息(***上傳... ***)。 – ITSUUUUUH

+0

我有完全相同的問題。 UploadFile是webclient上的一種方法,所以我不明白這些麻煩來自哪裏。 –