Windowsでコマンドラインからwgetやcurlなどのファイルをダウンロードする方法
Internet ExplorerやFirefoxでAcrobat Reader/Quicktime/MS Word/whateverを開かずに直接Webから何かをダウンロードするにはどうしたらいいですか?
私はWindowsを使っているので、Windows版の Wget があればできると思います。
Internet ExplorerやFirefoxでAcrobat Reader/Quicktime/MS Word/whateverを開かずに直接Webから何かをダウンロードするにはどうしたらいいですか?
私はWindowsを使っているので、Windows版の Wget があればできると思います。
PowerShellを使用して、最近発見した代替方法があります:
$client = new-object System.Net.WebClient
$client.DownloadFile("http://www.xyz.net/file.txt","C:\tmp\file.txt")
GETクエリと同様に動作します。そこに入力した認証情報がファイルをダウンロードするために使用されます。この操作は、$client オブジェクトを使用している間は一度だけで済みます。
Wget for Windows** ](http://eternallybored.org/misc/wget/)は動作するはずです。
Wget Wiki FAQ より:
GNU Wgetは、HTTPとFTPという、最も広く使われている2つのインターネットプロトコルを使って、WWWからファイルを取得するためのフリーのネットワークユーティリティです。
FAQのこのセクション から、ダウンロードリンクが提案されています:
Windows Binaries
courtesy of Jernej Simončič. http://eternallybored.org/misc/wget/ ](http://eternallybored.org/misc/wget/)
sourceforge から: http://gnuwin32.sourceforge.net/packages/wget.htm
[ … ]
Jernej Simončiči の礼儀を持つリンクは、代わりに使用されます。
If you have PowerShell >= 3.0, you can us Invoke-WebRequest
Invoke-WebRequest -OutFile index.html http://superuser.com
または golfed
iwr -outf index.html http://superuser.com
Windowsは、独自のコマンドラインダウンロードユーティリティを持っています - BITSAdmin :
BITSAdminは、ダウンロードまたはアップロードジョブを作成し、その進捗状況を監視するために使用することができますコマンドラインツールです。26.01.15 - ここでは、ファイルが外部ツールなしでWindows上でダウンロードすることができる方法の私の概要です
そして、完全なbitsadminの例:
bitsadmin /transfer myDownloadJob /download /priority normal http://downloadsrv/10mb.zip c:0mb.zip
EDIT . 15.05.2018 - certutilでファイルをダウンロードすることも可能であることが判明しました:
certutil.exe -urlcache -split -f "https://download.sysinternals.com/files/PSTools.zip" pstools.zip
CertutilはXP/Win2003にはデフォルトでインストールされていませんが、新しいバージョンのWindowsでは利用可能です。
次のテキストをwget.js
として保存し、単に
cscript /nologo wget.js http://example.com
これはコードです。
上記のPowerShellメソッドを呼び出すクイックmyGet.batファイルを作ってみました。
@Echo OFF
SetLocal EnableDelayedExpansion
Set Var=%1
Set Var=!Var:http://=!
Set Var=!Var:/=,!
Set Var=!Var:%%20=?!
Set Var=!Var: =?!
Call :LOOP !var!
Echo.Downloading: %1 to %~p0!FN!
powershell.exe -Command (new-object System.Net.WebClient).DownloadFile('%1','%~p0!FN!')
GoTo :EOF
:LOOP
If "%1"=="" GoTo :EOF
Set FN=%1
Set FN=!FN:?= !
Shift
GoTo :LOOP
私は Parsing URL for filename with space _からいくつかのコードを拝借しました。
Windows用のネイティブcURLがあります。
**また、すべての最新バージョンのWindows Powershellには、wget
とcurl
エイリアスが組み込まれていることを知っておくことも重要です。
007 の機能を得るために余分なファイルやダウンロードは必要ありません: Using Curl In Powershell (The Sociable Geek)
抜粋:
GitHub リポジトリからファイルをダウンロードするような cURL コマンドを入力することができます。
と入力すると動作しているように見えますが、実際にはcURLをエイリアスとして使用しているだけです。
PowerShell のエイリアスを使用すると、長いコマンドのショートカットを作成することができますので、常にタイプアウトする必要はありません。ご覧のように、curl コマンドは Invoke-WebRequest コマンドを呼び出すだけです。これらは似ていますが、同じではありません。
PowerShell で正しく動作させるための最も簡単な方法は、以下のように変数と wget
引数を使用することです:
(ファイル名はイメージで切り取られます https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/mongodb-on-ubuntu/azuredeploy. json “)
この構文は、ターゲットファイル -OutFile
の完全な内容をローカルファイル azuredeploy.json
**主な利点は、これが Powershell 自体に組み込まれているので、このコードはダウンロードやその他の余分なファイル作成を必要とせずに直接実行され、最新の Windows バージョンで動作することです。
私は同じものを検索していて、私は上記のパッケージのいずれかをインストールする権限を持っていなかったので、私は小さな回避策(30+ファイルをダウンロードする)のために行きました:
firefox.exe
を入れました Program Files
の中のfirefoxディレクトリに行きました また、 PowerShell にパッケージされている wget
を使う という方法もあります。) 開くには、Windows キーを押して “powershell” と入力するか、Windows-R を押して “powershell” と入力して return を押します。
インストールは不要です。PowerShell の wget
は単に wget
のための便利なラッパーであり、ファイルに書き込むためにその構文を使用する必要があります。
PowerShell ](http://en.wikipedia.org/wiki/Windows_PowerShell)がオプションである場合、それはあなたが(潜在的に)余分なものをインストールする必要がないので、好ましいルートです:
(new-object System.Net.WebClient).DownloadFile('http://www.xyz.net/file.txt', 'C:\tmp\file.tx??t')
それを失敗すると、他の人が指摘しているように、Windows用のWgetは、間違いなく2番目に良いオプションです。別の回答に投稿されたように、それはあなたが Wgetをすべて単独でダウンロード、または Cygwin または MSys の一部としてそれをつかむことができるように見えます。
何らかの理由でタイムワープにはまっていて、PowerShell がないマシンを使っていて、Web ブラウザにアクセスできず(Internet Explorer がシステム上の唯一のブラウザで、その設定が壊れている)、ファイルが FTP サイト(HTTP ではなく)にある場合は、このようになります。メモリが提供する場合、それはWindows 98以来そこにあった、と私はそれがWindows 8 RTMにまだあることを確認することができます(あなたはそれを得るためにappwiz.cpl
と機能を追加/削除に行かなければならないかもしれません)。このユーティリティは、ウェブ上のFTPサイトへのファイルのダウンロードとアップロードの両方を行うことができます。また、どちらかの操作を自動化するためのスクリプトで使用することもできます。 特に ftp.cdrom.com の時代はそうでした – ダイヤルアップインターネット接続しかなかった完全に壊れたマシンで、一度その方法で Firefox をダウンロードしたことがあります (sneakernet の最大パケットサイズがまだ 1.44 MB で、Firefox がまだ “Netscape” と呼ばれていた頃です /me does trollface)。help" と入力してみてください。すべての FTP サイトはユーザ名とパスワードを必要としますが、「匿名」ユーザを許可している場合、ユーザ名は「匿名」で、パスワードはあなたのメールアドレスです (追跡されたくなければ作っても構いませんが、通常は有効なメールアドレスであることを確認するための何らかのロジックがあります)。
https://lolbas-project.github.io ](https://lolbas-project.github.io)で`/download`機能を検索してください。
今現在、Windows vista、Windows 7、Windows 8、Windows 8.1、Windows 10、および同等のServerバージョンのためのBitsadmin.exe
、Certutil.exe
、Esentutl.exe
、Expand.exe, Extrac32.exe
、Findstr.exe
、Hh.exe
、Ieexec.exe
、Makecab.exe
、Replace.exe
、&007、&007があります。
Cygwin ](http://www.cygwin.com/)にはWgetがあります(他にもたくさんのユーティリティがあります)。
そして http://www.httrack.com/ は、ミラーリングサイトのための素敵な GUI を持っています (そしてそれは無料です)。また、Linux版もあります。
WGet for Windowsはこちらから入手できます。または、ダウンロードしたい項目のダウンロードリンクを右クリックして「名前を付けて保存」を選択することもできます。これでファイルがダウンロードされ、指定されたアプリケーションでは開きません。
この SUの答え で文書化されているように、Powershellで次のように使用することができます:
Import-Module bitstransfer
start-bitstransfer -source http://something/something.ext -destination c:\something.ext
gnuwin32 を使う代替手段としては、wget を含む unxutils があります。