非標準の(Windowsを含む)ユーティリティを使用せずに、Windowsのコマンドラインを使用してダウンロードすることは可能ですか?
推奨されるバージョンはWindows XPですが、新しいバージョンを知るのも興味深いです。
私の質問をさらに明確にするために:
だから基本的に、誰もが叫んでいるのでWget、私はWgetを使わずに単純なWget機能が欲しい。
VBScriptを書いてコマンドラインから実行することができます
ファイルdownloadfile.vbs
を作成し、次のコードを挿入します。
' Set your settings
strFileURL = "http://www.it1.net/images/it1_logo2.jpg"
strHDLocation = "c:\logo.jpg"
' Fetch the file
Set objXMLHTTP = CreateObject("MSXML2.XMLHTTP")
objXMLHTTP.open "GET", strFileURL, false
objXMLHTTP.send()
If objXMLHTTP.Status = 200 Then
Set objADOStream = CreateObject("ADODB.Stream")
objADOStream.Open
objADOStream.Type = 1 'adTypeBinary
objADOStream.Write objXMLHTTP.ResponseBody
objADOStream.Position = 0 'Set the stream position to the start
Set objFSO = CreateObject("Scripting.FileSystemObject")
If objFSO.Fileexists(strHDLocation) Then objFSO.DeleteFile strHDLocation
Set objFSO = Nothing
objADOStream.SaveToFile strHDLocation
objADOStream.Close
Set objADOStream = Nothing
End if
Set objXMLHTTP = Nothing
次のようにコマンドラインから実行してください。
cscript.exe downloadfile.vbs
Windows 7以降、まだ言及されていない単一の方法があると思います。それは簡単です。
構文:
bitsadmin/transfer 職種名 /ダウンロード/優先度 優先度URLローカル\パス\ファイル
例:
bitsadmin /転送mydownloadjob /ダウンロード/優先度標準^ http://example.com/filename.Zip C:\ Users \username\ Downloads\filename.Zip
(読みやすくするために(スクロールを避けるために)^
で2行に分けています。)
警告:コメントで指摘されているように、bitsadmin
ヘルプメッセージは次のように言って始まります。
BITSAdmin is deprecated and is not guaranteed to be available in future versions of Windows.
Administrative tools for the BITS service are now provided by BITS PowerShell cmdlets.
...しかし、別のコメントでは、Windows 8上で動作すると報告されています。
Windows 7にはPowerShellが含まれており、PowerShellではできないことはほとんど何もありません。
PowerShell(Windows 8に含まれ、以前のリリースでは.NETに含まれていたもの)にこの機能があります。 powershell
コマンドを使用すると、コマンドラインまたは.bat
ファイルから任意のPowerShellコマンドを実行できます。したがって、次の行が欲しいものです。
powershell -command "& { (New-Object Net.WebClient).DownloadFile('http://example.com/', 'c:\somefile') }"
やり方を見つけましたが、実際には、 Wget をインストールするだけです。
Internet Explorerをコマンドライン(iexplore.exe)から使用して、引数としてURLを入力することができます。だから、実行します:
iexplore.exe http://blah.com/filename.Zip
ファイルが何であれ、事前に確認する必要がないことを指定する必要があります。見て、それは自動的にダウンロードを実行します。そうです、それは技術的には可能ですが、善主は別の方法でそれを行います。
Windowsエクスプローラ (Internet Explorerと混同しないでください)は、HTTPを介してファイルをダウンロードできます。アドレスバーにURLを入力するだけです。またはコマンドラインから、たとえばC:\windows\Explorer.exe http://somewhere.com/filename.ext
。
あなたは古典的なFile DownloadPromptを得ます。ファイルが、インライン表示方法(.html、.jpg、.gif)を認識しているファイルである場合を除き、その場合は右クリックしてファイルを保存する必要があります。
私はちょうどこれを私の VMware Windows XP 2002 SP1のバージンインストールのイメージでテストしました、そしてそれはうまく働きます。
FTPを使用してください。
コマンドラインから:
ftp ftp.somesite.com
user
password
fTPは私が覚えていることができるすべてのWindowsバージョンに含まれています。おそらく3.1にはなく、 Windows 95 にはないかもしれませんが、それ以降は間違いなくすべてです。
@ RM:あなたが他のツールをダウンロードしたくないのであれば、それはラフになるでしょう。 Windows用のコマンドライン Wget および Wget は、要求したとおりに動作するように設計されています。
このようにPowerShellを使用してください。
Download.ps1ファイルを作成します。
param($url, $filename)
$client = new-object System.Net.WebClient
$client.DownloadFile( $url, $filename)
今、あなたはこのようなファイルをダウンロードすることができます:
powershell Set-ExecutionPolicy Unrestricted
powershell -ExecutionPolicy RemoteSigned -File "download.ps1" "http://somewhere.com/filename.ext" "d:\filename.ext"
以下の方法でファイルをダウンロードできます
bitsadmin/transfer wcb/priority priority https://sustainabledevelopment.un.org/content/documents/Agenda21.pdf C:\ Program Files(x86)\Dellアップデート\ Agenda21.pdf
WindowsにLinuxアプリケーションのWgetをインストールできます。それは、 http://gnuwin32.sourceforge.net/packages/wget.htm からダウンロードできます。コマンドプロンプトで 'wget(inserturlhere)'または他の URL コマンドを発行すると、そのURL /ファイル/イメージをダウンロードできます。
Windowsのコマンドラインを使用してダウンロードできる方法はいくつかあります。
あなたは Cygwin を使うことができます。
注:含まれているアプリはネイティブのLinuxアプリではありません。 Windowsで実行したい場合は、アプリケーションをソースから再構築する必要があります。
Telnetを使って要求を出すことは可能ですが、処理は行われません。
あなたはバットやVBSスクリプトを書くことができます。
Cmd.exeから実行できるあなた自身のプログラムを書きなさい。
あなたがpythonをインストールしているのであれば、これはウェブからget-pip.pyを取得する例です。
python -c "import urllib; urllib.urlretrieve ('https://bootstrap.pypa.io/get-pip.py', r'C:\python27\Tools\get-pip.py')"
デフォルトのWindowsでは、HTTP経由でダウンロードすることはできません。 WindowsはGUI中心のOSなので、他のOSに見られるようなコマンドラインツールの多くが欠けています。例えばwget
が一番の候補です。
WiniNet
APIの関数であるSystem.Net.WebClient.DownloadFile()
はファイルをダウンロードすることができますが、実際の開発とバッチファイルの比較がどの程度進んでいるかはわかりません。