wgetはダウンロード後にファイルを保存しません。

wgetはダウンロード後にファイルを保存しません。

そのため、現在wgetWindows 10 Powershellでコマンドを使用してさまざまなファイルをダウンロードしています。ただし、このコマンドをテストすると、ファイルは実際にダウンロードされませんでした。

たとえば、次のような画像をダウンロードしたいとします。https://picsum.photos/200、次のコマンドを使用します。

PS C:\Users\myname\Desktop> wget https://picsum.photos/200

明らかに成功した結果を返します。

StatusCode        : 200
StatusDescription : OK
Content           : {255, 216, 255, 224...}
RawContent        : HTTP/1.1 200 OK
                Access-Control-Expose-Headers: Content-Length
                Content-Disposition: inline;filename=""
                Vary: Origin
                Access-Control-Allow-Origin: *
                X-Content-Type-Options: nosniff
                X-XSS-Protection...
Headers           : {[Access-Control-Expose-Headers, Content-Length], [Content-Disposition, inline;filename=""],
                [Vary, Origin], [Access-Control-Allow-Origin, *]...}
RawContentLength  : 31273

このプロセスが完了した後、デスクトップに新しいファイルは表示されません。

ただし、このコードは機能します。

wget https://picsum.photos/200 -O image.jpg

それで何が起こりましたか?wgetファイルを個別にダウンロードできないのはなぜですか?

ベストアンサー1

Powershellの実装はwgetそうではないため、wgetUNIX / Linuxユーティリティとは異なる動作をしますwget

〜のように指摘 user4556274が提供するPowershellは、wget独自curlのエイリアスを使用します。Invoke-WebRequest

これを見ると(またはPowershellで実行すると)、このフラグは許可されている略語であり、URLのデフォルト名に従って名前付きファイルを作成するのではなく、実際にWebページを表すオブジェクトを返すことがわかりGet-Help wgetます。-O [filename]-Output [filename]Invoke-WebRequest [URI]

したがって、変数に代入したり、他のコマンドにパイプしない限り、「None」が返されます。

wget http://example.net/path/to/page.html

ただし、これは「予想どおり」Webページを提供します。

wget http://example.net/path/to/page.html -O page.html

おすすめ記事