2016-11-20 3 views
5

だから、コマンドプロンプトではなくPowerShellを使い始めることにしました。そして、私はcurlを実行したいです。出力が非常に異なると、curlがPowerShellのInvoke-WebRequestのエイリアスであることがわかります。Invoke-WebRequestですべてのコンテンツを表示する

curlと同じ方法でPowerShell curlを使用すると、表示されるコンテンツの一部しか取得できません。

PowerShell curlの出力を変数に入れて、$variable.Contentを使用してすべてのコンテンツを表示することができますが、これは実際のcurlよりも余分な作業です。

すべてのコンテンツを直接表示するオプションはありますか?助けてもらえません。

答えて

9

curlコマンドラインユーティリティとは異なりInvoke-WebRequest戻ります要求された文書の内容がちょうど1である様々な特性を有するオブジェクト。

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 
関連する問題