2016-11-20 85 views
5

因此我決定開始使用PowerShell而不是命令提示符。我想運行curl。然後發現非常不同的輸出curl是PowerShell中的Invoke-WebRequest的別名。使用Invoke-WebRequest顯示所有內容

以與真實curl相同的方式使用PowerShell curl,我只顯示部分內容。

我已經看到我可以將PowerShell curl的輸出放入一個變量中,然後使用$variable.Content來顯示所有的內容,但似乎是比實際的curl更多的工作。

有沒有可以直接顯示所有內容的選項?我在幫助中看不到一個人。

回答

9

不像curl命令行實用程序Invoke-WebRequest回報具有各種屬性的對象,其中請求文檔的內容僅爲一個。

Invoke-WebRequest 'http://www.example.org/' | Select-Object -Expand Content 

或通過點號獲取屬性值是這樣的::您可以通過擴大像這樣的屬性來獲取在單個語句內容

(Invoke-WebRequest 'http://www.example.org/').Content 

另外,您可以使用Windows端口號curl

& curl.exe 'http://www.example.org/' 

調用帶有擴展名的程序來區分它來自別名curl,代表Invoke-WebRequest

+0

謝謝Ansgar - 中間答案很好。 – John

0

這樣的事情?

$res=Invoke-WebRequest "https://www.google.fr/" 


#for look html of body 
$res.ParsedHtml.body.innerHTML 

#for look text of body 
$res.ParsedHtml.body.innerText 
0

好吧,如果你有額外的打字困擾,這是實現這一(好吧,至少我能想到的)的最短途徑:

(iwr google.tt).content 
相關問題