উইন্ডোজ ব্যাচ ফাইল ফাইলটি একটি URL থেকে ডাউনলোড করুন


113

আমি একটি উইন্ডোজ ব্যাচ ফাইল ব্যবহার করে একটি ওয়েবসাইট (উদাহরণস্বরূপ http://www.example.com/package.zip ) থেকে একটি ফাইল ডাউনলোড করার চেষ্টা করছি । আমি নীচের ফাংশনটি লিখতে গিয়ে একটি ত্রুটি কোড পাচ্ছি:

xcopy /E /Y "http://www.example.com/package.zip"

ব্যাচের ফাইলটি http এর পরে "/" পছন্দ করবে বলে মনে হচ্ছে না। এই চরিত্রগুলি এড়িয়ে যাওয়ার কোনও উপায় আছে যাতে এটি ধরে নেওয়া যায় না যে তারা ফাংশন পরামিতি?


এখানে: stackoverflow.com/questions/28143160/… আমি তৃতীয় পক্ষের সফ্টওয়্যার ছাড়াই কেবল নেটিভ সরঞ্জাম ব্যবহার করে উইন্ডোজে কীভাবে কোনও ফাইল ডাউনলোড করা যায় সেগুলি পুনরায় শুরু করার চেষ্টা করেছি।
npocmaka

উত্তর:


135

পাওয়ারশেল ২.০ (উইন্ডোজ pre প্রিন্টলযুক্ত) সহ আপনি ব্যবহার করতে পারেন:

(New-Object Net.WebClient).DownloadFile('http://www.example.com/package.zip', 'package.zip')

পাওয়ারশেল Power.০ (উইন্ডোজ 8 প্রিনস্টলযুক্ত) ব্যবহার করে আপনি ব্যবহার করতে পারেন Invoke-WebRequest:

Invoke-WebRequest http://www.example.com/package.zip -OutFile package.zip

ব্যাচের ফাইল থেকে তাদের ডাকা হয়:

powershell -Command "(New-Object Net.WebClient).DownloadFile('http://www.example.com/package.zip', 'package.zip')"
powershell -Command "Invoke-WebRequest http://www.example.com/package.zip -OutFile package.zip"

(পাওয়ারসেল ২.০ উইন্ডোজ 3.0 এর জন্য এক্সপি, 3.0 এ ইনস্টলেশন করার জন্য উপলব্ধ)


2
শান্ত! বিটসাদমিন.এক্সের চেয়ে ভাল, কারণ এটি হ্রাস করা হয়নি।
সাইনলাও

@sevenforce, PowerShell 3.0 PowerShell 2.0 কমান্ড এছাড়াও কাজ করে, অথবা আপনি কি আছে যে PowerShell 3.0 সিনট্যাক্স ব্যবহার করতে হয়?
রিচ সিগনেল

4
@ রিচসিগনেল: ২.০ কমান্ডটি 3.0 এও কাজ করে। ২.০ কমান্ডের জন্য আমি লক্ষ্য করেছিলাম যে, একটি নিরঙ্কুশ টার্গেট পাথের জন্য ফাইলটি ব্যবহারকারীর হোম ফোল্ডারের সাথে সম্পর্কিত সংরক্ষণ করা হবে।
সাতফোর্স

1
এটা চমৎকার. আমি এত দিন ধরে এটি খুঁজছিলাম ধন্যবাদ! এখনও 2017 সালে কাজ করে
আলবার্ট এমএন।

2
২.০ কোডটি আপ টু ডেট উইন me এ আমার জন্য কাজ করছে এবং যেহেতু এটি পাওয়ারশেল অ্যাডমিনের অনুমতি না দিয়েও কাজ করে, তাই অজানা .batএবং .ps1ফাইলগুলিতে ক্লিক করা আপনার স্টাফকে সত্যিকার অর্থে ডেকে আনতে পারে এমন ধারণার একটি নিখুঁত প্রমাণ হিসাবে এটি দাঁড় করুক ।
1934286

97

একটি স্ট্যান্ডার্ড উইন্ডোজ উপাদান রয়েছে যা আপনি যা করতে চাইছেন তা অর্জন করতে পারে: বিটস । এটি এক্সপি এবং 2000 এসপি 3 সাল থেকে উইন্ডোজটিতে অন্তর্ভুক্ত করা হয়েছে।

চালান:

bitsadmin.exe /transfer "JobName" http://download.url/here.exe C:\destination\here.exe

কাজের নামটি হ'ল ডাউনলোড কাজের জন্য প্রদর্শনের নাম - এটি এমন কিছু সেট করুন যা আপনি কী করছেন তা বর্ণনা করে।


14
দুর্দান্ত সরঞ্জাম! তবে আমার উইন 8 বলে: "বিটসএডমিন হ্রাস করা হয়েছে এবং উইন্ডোজের ভবিষ্যতের সংস্করণগুলিতে উপলব্ধ থাকার নিশ্চয়তা নেই। বিআইটিএস পরিষেবার জন্য প্রশাসনিক সরঞ্জামগুলি এখন বিআইটিএস পাওয়ারশেল সেন্টিমিডলেট সরবরাহ করে" "
পিটার

1
আমি ইতিমধ্যে উল্লিখিত হিসাবে বিটসাদমিন টাস্ক শিডিয়ুলার থেকে চালিত স্বয়ংক্রিয় ব্যাচগুলিতে কাজ করছে না :(
TomeeNS

1
bitsadminউইন্ডোজ এক্সপি হোম সংস্করণে সিএমরোয়ানিরগো উপলব্ধ নেই।
ক্যাসকেডিং-স্টাইল

1
উইন্ডোজ 10 প্রো
অরওলোফিল

3
ধন্যবাদ! ওয়েব থেকে কোনও ফাইল ডাউনলোড করার অন্য কোনও সম্ভাব্য উপায় ছাড়াই সংক্রামিত কম্পিউটারে কবজির মতো কাজ করেছেন। (এমনকি পাওয়ারশেলও চালু করা অসম্ভব ছিল)
szab.kel

29

এটি সামান্য অফ টপিক হতে পারে তবে আপনি পাওয়ারশেল ব্যবহার করে খুব সহজেই একটি ফাইল ডাউনলোড করতে পারেন । পাওয়ারশেল উইন্ডোজের আধুনিক সংস্করণ নিয়ে আসে যাতে আপনাকে কম্পিউটারে কোনও অতিরিক্ত জিনিস ইনস্টল করতে হবে না। আমি এই পৃষ্ঠাটি পড়ে এটি কীভাবে করব তা শিখেছি:

http://teusje.wordpress.com/2011/02/19/download-file-with-powershell/

কোডটি ছিল:

$webclient = New-Object System.Net.WebClient
$url = "http://www.example.com/file.txt"
$file = "$pwd\file.txt"
$webclient.DownloadFile($url,$file)

2
আপনি যদি সেই ব্লগে অনুসন্ধান করেন তবে অন্যান্য পাওয়ারশেলের নমুনাগুলি রয়েছে যা নতুন পাওয়ারশেল সংস্করণ 3.0
juFo

আমি মনে করি না আপনি প্রয়োজন Systemমধ্যেSystem.Net.WebClient
1934286

25

শেষ আমি যাচাই করেছিলাম, এমএস কমান্ড লাইন থেকে কোনও URL এ সংযোগ করার জন্য কোনও কমান্ড লাইন কমান্ড নেই। উইন্ডোজের জন্য উইজেট ব্যবহার করে দেখুন :
http://gnuwin32.sourceforge.net/packages/wget.htm

বা URL2File:
http://www.chami.com/free/url2file_wincon.html

লিনাক্সে, আপনি "উইজেট" ব্যবহার করতে পারেন।

বিকল্পভাবে, আপনি ভিবিএস স্ক্রিপ্ট চেষ্টা করতে পারেন। এগুলি কমান্ড লাইন প্রোগ্রামগুলির মতো তবে সেগুলি স্ক্রিপ্টগুলি ডাব্লুএসক্রিপ্ট.এক্সপি স্ক্রিপ্ট হোস্ট দ্বারা ব্যাখ্যা করা হয়। এখানে ভিবিএস ব্যবহার করে একটি ফাইল ডাউনলোড করার একটি উদাহরণ রয়েছে:
/server/29707/download-file-from-vbscript


2
আপনার উইজেট বা কোনও তৃতীয় পক্ষের সংহতকরণের দরকার নেই। বিআইটিএস (এক্সপি থেকে স্ট্যান্ডার্ড উইন্ডোজ উপাদান) এমএস কমান্ড লাইন থেকে বিটসাদমিন ইউটিলিটি দিয়ে এটি করতে পারে। উত্তর পোস্ট হয়েছে - কিছুটা দেরীতে হলেও (2 বছর পিছনে?)
ব্রেইনউড

18

খাঁটি ব্যাচে ফাইলগুলি ডাউনলোড করা হচ্ছে ...

কোনও জেএসক্রিপ্ট, ভিবিএস স্ক্রিপ্ট, পাওয়ারশেল ইত্যাদি ছাড়া ... কেবল খাঁটি ব্যাচ!

কিছু লোক বলছেন যে কোনও জেএসক্রিপ্ট বা ভিবিএস স্ক্রিপ্ট ইত্যাদি ব্যবহার না করে ব্যাচের স্ক্রিপ্টের মাধ্যমে ফাইলগুলি ডাউনলোড করা সম্ভব নয় ... তবে তারা অবশ্যই ভুল!

এখানে একটি সহজ পদ্ধতি যা আপনার ব্যাচের স্ক্রিপ্টগুলিতে ফাইলগুলি ডাউনলোড করার জন্য বেশ ভালভাবে কাজ করছে বলে মনে হচ্ছে। এটি প্রায় কোনও ফাইলের ইউআরএল নিয়ে কাজ করা উচিত। আপনার যদি প্রয়োজন হয় তবে প্রক্সি সার্ভার ব্যবহার করাও সম্ভব।

ফাইলগুলি ডাউনলোড করার জন্য, আমরা উইন্ডোজ সিস্টেম থেকে BITSADMIN.EXE ব্যবহার করতে পারি । কোনও কিছু ডাউনলোড / ইনস্টল করার বা কোনও জেএসক্রিপ্ট বা ভিবিএস স্ক্রিপ্ট ইত্যাদি ব্যবহার করার প্রয়োজন নেই, বিটসাদমিন.এক্সপি বেশিরভাগ উইন্ডোজ সংস্করণে উপস্থিত রয়েছে সম্ভবত এক্সপি থেকে উইন্ডোজ 10 এ to

উপভোগ করুন!


ব্যবহার:

আপনি সরাসরি বিটসাদমিন কমান্ডটি ব্যবহার করতে পারেন:
bitsadmin /transfer mydownloadjob /download /priority FOREGROUND "http://example.com/File.zip" "C:\Downloads\File.zip"

প্রক্সি সার্ভার:
প্রক্সি ব্যবহার করে সংযোগের জন্য, ডাউনলোডের আগে এই কমান্ডটি ব্যবহার করুন।
bitsadmin /setproxysettings mydownloadjob OVERRIDE "proxy-server.com:8080" "<local>"

এই ক্লিক করুন LINK এ আপনি BITSadmin.exe সম্পর্কে আরও তথ্য চান


ট্রাবলশুটিং:
আপনি যদি এই ত্রুটিটি পান: "বিটস - 0x80070422 এর সাথে সংযোগ স্থাপনে অক্ষম"
উইন্ডো পরিষেবাটি "ব্যাকগ্রাউন্ড ইন্টেলিজেন্ট ট্রান্সফার সার্ভিস (বিআইটিএস)" সক্ষম হয়েছে কিনা তা নিশ্চিত করুন এবং আবার চেষ্টা করুন। (এটি ডিফল্টরূপে সক্ষম করা উচিত))


কাস্টম ফাংশন
Call :DOWNLOAD_FILE "URL"
Call :DOWNLOAD_PROXY_ON "SERVER:PORT"
Call :DOWNLOAD_PROXY_OFF

বিটসডমিন কমান্ডগুলি সরল করার জন্য আমি এই 3 টি ফাংশন করেছি। এটি ব্যবহার করা এবং মনে রাখা সহজ। এটি বিশেষভাবে কার্যকর হতে পারে যদি আপনি এটি আপনার স্ক্রিপ্টগুলিতে একাধিকবার ব্যবহার করেন।

দয়া করে নোট করুন ...
এই ফাংশনগুলি ব্যবহার করার আগে আপনাকে প্রথমে CUSTOM_FUNCTIONS.CMD থেকে আপনার স্ক্রিপ্টের শেষে অনুলিপি করতে হবে। একটি সম্পূর্ণ উদাহরণও রয়েছে: ডাউনলোড-এক্সাম্পল.সিএমডি

: DOWNLOAD_FILE "URL"
মূল ফাংশনটি ইউআরএল থেকে ফাইলগুলি ডাউনলোড করবে।

: DOWNLOAD_PROXYटका "সার্ভার: পোর্ট"
( ptionচ্ছিক ) আপনি যদি প্রক্সি সার্ভার ব্যবহার করতে চান তবে আপনি এই ফাংশনটি ব্যবহার করতে পারেন।
কল: DOWNLOAD_PROXY_OFF ফাংশন প্রক্সি সার্ভার অক্ষম করবে।

উদাহরণ:
CALL :DOWNLOAD_PROXY_ON "proxy-server.com:8080"
CALL :DOWNLOAD_FILE "http://example.com/File.zip" "C:\Downloads\File.zip"
CALL :DOWNLOAD_PROXY_OFF


CUSTOM_FUNCTIONS.CMD

:DOWNLOAD_FILE
    rem BITSADMIN COMMAND FOR DOWNLOADING FILES:
    bitsadmin /transfer mydownloadjob /download /priority FOREGROUND %1 %2
GOTO :EOF

:DOWNLOAD_PROXY_ON
    rem FUNCTION FOR USING A PROXY SERVER:
    bitsadmin /setproxysettings mydownloadjob OVERRIDE %1 "<local>"
GOTO :EOF

:DOWNLOAD_PROXY_OFF
    rem FUNCTION FOR STOP USING A PROXY SERVER:
    bitsadmin /setproxysettings mydownloadjob NO_PROXY
GOTO :EOF

ডাউনলোড-EXAMPLE.CMD

@ECHO OFF
SETLOCAL

rem FOR DOWNLOADING FILES, THIS SCRIPT IS USING THE "BITSADMIN.EXE" SYSTEM FILE.
rem IT IS PRESENT ON MOST WINDOWS VERSION, PROBABLY FROM WINDOWS XP TO WINDOWS 10.


:SETUP

rem URL (5MB TEST FILE):
SET "FILE_URL=http://ipv4.download.thinkbroadband.com/5MB.zip"

rem SAVE IN CUSTOM LOCATION:
rem SET "SAVING_TO=C:\Folder\5MB.zip"

rem SAVE IN THE CURRENT DIRECTORY
SET "SAVING_TO=5MB.zip"
SET "SAVING_TO=%~dp0%SAVING_TO%"

:MAIN

ECHO.
ECHO DOWNLOAD SCRIPT EXAMPLE
ECHO.
ECHO FILE URL: "%FILE_URL%"
ECHO SAVING TO:  "%SAVING_TO%"
ECHO.

rem UNCOMENT AND MODIFY THE NEXT LINE IF YOU NEED TO USE A PROXY SERVER:
rem CALL :DOWNLOAD_PROXY_ON "PROXY-SERVER.COM:8080"

rem THE MAIN DOWNLOAD COMMAND:
CALL :DOWNLOAD_FILE "%FILE_URL%" "%SAVING_TO%"

rem UNCOMMENT NEXT LINE FOR DISABLING THE PROXY (IF YOU USED IT):
rem CALL :DOWNLOAD_PROXY_OFF

:RESULT
ECHO.
IF EXIST "%SAVING_TO%" ECHO YOUR FILE HAS BEEN SUCCESSFULLY DOWNLOADED.
IF NOT EXIST "%SAVING_TO%" ECHO ERROR, YOUR FILE COULDN'T BE DOWNLOADED.
ECHO.

:EXIT_SCRIPT
PAUSE
EXIT /B




rem FUNCTIONS SECTION


:DOWNLOAD_FILE
    rem BITSADMIN COMMAND FOR DOWNLOADING FILES:
    bitsadmin /transfer mydownloadjob /download /priority FOREGROUND %1 %2
GOTO :EOF

:DOWNLOAD_PROXY_ON
    rem FUNCTION FOR USING A PROXY SERVER:
    bitsadmin /setproxysettings mydownloadjob OVERRIDE %1 "<local>"
GOTO :EOF

:DOWNLOAD_PROXY_OFF
    rem FUNCTION FOR STOP USING A PROXY SERVER:
    bitsadmin /setproxysettings mydownloadjob NO_PROXY
GOTO :EOF

1
আমি কেবল আমার উত্তরটি আপডেট করেছি ... স্পষ্টতই, ডাউনলোডের গতি অত্যন্ত ধীর ছিল, তাই আমি "/ অগ্রাধিকার স্বাভাবিক" থেকে "/ অগ্রাধিকারের অগ্রভাগ" এ প্যারামিটারটি পরিবর্তন করেছি এবং এটি সমস্যার সমাধান করেছে। এটি এখন আপনার উপলব্ধ ব্যান্ডউইথের 100% ব্যবহার করা উচিত। (~ 5% এর পরিবর্তে)
ফ্রাঙ্ক আইনস্টাইন

11
' Create an HTTP object
myURL = "http://www.google.com"
Set objHTTP = CreateObject( "WinHttp.WinHttpRequest.5.1" )

' Download the specified URL
objHTTP.Open "GET", myURL, False
objHTTP.Send
intStatus = objHTTP.Status

If intStatus = 200 Then
  WScript.Echo " " & intStatus & " A OK " +myURL
Else
  WScript.Echo "OOPS" +myURL
End If

তারপর

C:\>cscript geturl.vbs
Microsoft (R) Windows Script Host Version 5.7
Copyright (C) Microsoft Corporation. All rights reserved.

200 A OK http://www.google.com

অথবা উইন্ডোতে পরীক্ষা করতে এটিতে ডাবল ক্লিক করুন


1
এটি কেবল মেমোরিতে ডাউনলোড হচ্ছে এবং কোনও ফাইলে লিখছে না। কোনও ফাইলে ডাউনলোড করার জন্য এই উত্তরটি দেখুন: stackoverflow.com/a/2973344/977804
ড্যানিয়েল

5

আফাইক, উইন্ডোজের কোনও ফাইল ডাউনলোড করার জন্য অন্তর্নির্মিত কমান্ডলাইন সরঞ্জাম নেই। তবে আপনি এটি একটি ভিবিএস স্ক্রিপ্ট থেকে করতে পারেন এবং ইকো এবং আউটপুট পুনঃনির্দেশ ব্যবহার করে আপনি ব্যাচ থেকে ভিবিএস স্ক্রিপ্ট ফাইলটি তৈরি করতে পারেন:

@echo off

rem Windows has no built-in wget or curl, so generate a VBS script to do it:
rem -------------------------------------------------------------------------
set DLOAD_SCRIPT=download.vbs
echo Option Explicit                                                    >  %DLOAD_SCRIPT%
echo Dim args, http, fileSystem, adoStream, url, target, status         >> %DLOAD_SCRIPT%
echo.                                                                   >> %DLOAD_SCRIPT%
echo Set args = Wscript.Arguments                                       >> %DLOAD_SCRIPT%
echo Set http = CreateObject("WinHttp.WinHttpRequest.5.1")              >> %DLOAD_SCRIPT%
echo url = args(0)                                                      >> %DLOAD_SCRIPT%
echo target = args(1)                                                   >> %DLOAD_SCRIPT%
echo WScript.Echo "Getting '" ^& target ^& "' from '" ^& url ^& "'..."  >> %DLOAD_SCRIPT%
echo.                                                                   >> %DLOAD_SCRIPT%
echo http.Open "GET", url, False                                        >> %DLOAD_SCRIPT%
echo http.Send                                                          >> %DLOAD_SCRIPT%
echo status = http.Status                                               >> %DLOAD_SCRIPT%
echo.                                                                   >> %DLOAD_SCRIPT%
echo If status ^<^> 200 Then                                            >> %DLOAD_SCRIPT%
echo    WScript.Echo "FAILED to download: HTTP Status " ^& status       >> %DLOAD_SCRIPT%
echo    WScript.Quit 1                                                  >> %DLOAD_SCRIPT%
echo End If                                                             >> %DLOAD_SCRIPT%
echo.                                                                   >> %DLOAD_SCRIPT%
echo Set adoStream = CreateObject("ADODB.Stream")                       >> %DLOAD_SCRIPT%
echo adoStream.Open                                                     >> %DLOAD_SCRIPT%
echo adoStream.Type = 1                                                 >> %DLOAD_SCRIPT%
echo adoStream.Write http.ResponseBody                                  >> %DLOAD_SCRIPT%
echo adoStream.Position = 0                                             >> %DLOAD_SCRIPT%
echo.                                                                   >> %DLOAD_SCRIPT%
echo Set fileSystem = CreateObject("Scripting.FileSystemObject")        >> %DLOAD_SCRIPT%
echo If fileSystem.FileExists(target) Then fileSystem.DeleteFile target >> %DLOAD_SCRIPT%
echo adoStream.SaveToFile target                                        >> %DLOAD_SCRIPT%
echo adoStream.Close                                                    >> %DLOAD_SCRIPT%
echo.                                                                   >> %DLOAD_SCRIPT%
rem -------------------------------------------------------------------------

cscript //Nologo %DLOAD_SCRIPT% http://example.com targetPathAndFile.html

এখানে আরও ব্যাখ্যা


কোনও পৃথক ফাইলে এটি না করার এবং ব্যাচ থেকে কেবল ভিবিএস স্ক্রিপ্ট ফাইলটি কল করার কোনও কারণ? এটি সম্পাদনা করার প্রয়োজন হলে এটি একটি ভয়াবহ জগাখিচুড়ি হতে চলেছে।
seadoggie01

4
  1. এখান থেকে উইজেট ডাউনলোড করুন http://downloads.sourceforge.net/gnuwin32/wget-1.11.4-1-setup.exe

  2. তারপরে এটি ইনস্টল করুন।

  3. তারপরে কিছু .bat ফাইল তৈরি করুন এবং এটি এতে রাখুন

    @echo off
    
    for /F "tokens=2,3,4 delims=/ " %%i in ('date/t') do set y=%%k
    for /F "tokens=2,3,4 delims=/ " %%i in ('date/t') do set d=%%k%%i%%j
    for /F "tokens=5-8 delims=:. " %%i in ('echo.^| time ^| find "current" ') do set t=%%i%%j
    set t=%t%_
    if "%t:~3,1%"=="_" set t=0%t%
    set t=%t:~0,4%
    set "theFilename=%d%%t%"
    echo %theFilename%
    
    
    cd "C:\Program Files\GnuWin32\bin"
    wget.exe --output-document C:\backup\file_%theFilename%.zip http://someurl/file.zip
    
  4. স্ক্রিপ্টে URL এবং ফাইলের পাথ সামঞ্জস্য করুন

  5. ফাইল চালিয়ে লাভ!

3

আপনি HTC- র মাধ্যমে এক্সকপি ব্যবহার করতে পারবেন না। উইন্ডোজের জন্য উইজেট ডাউনলোড করার চেষ্টা করুন। কৌতুক করতে পারে। এটি HTTP এর মাধ্যমে ফাইলগুলি অ-ইন্টারেক্টিভ ডাউনলোডের জন্য একটি কমান্ড লাইন ইউটিলিটি। আপনি এটি http://gnuwin32.sourceforge.net/packages/wget.htm এ পেতে পারেন


3

যদি বিটসাদমিন আপনার চায়ের কাপ না হয় তবে আপনি এই পাওয়ারশেল কমান্ডটি ব্যবহার করতে পারেন:

Start-BitsTransfer -Source http://www.foo.com/package.zip -Destination C:\somedir\package.zip

আমি .exe ডাউনলোড করতে চাই এবং আমিও এই কোডটি ব্যবহার করেছি এবং কাজ করে নি .. আমি কি ব্যাচ স্ক্রিপ্ট ব্যবহার করে .exe ডাউনলোড করতে পারি?
এমএএস। জন

3

রূপান্তরকারী পরীক্ষার জন্য ব্যাট ব্যবহার

করুন একটি ব্যাচ ফাইল তৈরি করুন এবং নীচে কোডের মতো কিছু এতে রেখে দিন

%extd% /download http://www.examplesite.com/file.zip file.zip

অথবা

%extd% /download http://stackoverflow.com/questions/4619088/windows-batch-file-file-download-from-a-url thistopic.html

এবং এটি এক্সে রূপান্তর করুন।


3

উইজেটের পরিবর্তে আপনি একটি নির্দিষ্ট ইউআরএল থেকে ফাইলটি ডাউনলোড করতে আরিয়া 2 ব্যবহার করতে পারেন।

নীচের লিঙ্কটি দেখুন যা এরিয়া 2 সম্পর্কে আরও ব্যাখ্যা করবে:

https://aria2.github.io/


এই সরঞ্জামটি উল্লেখ করার জন্য +1 যা আমি এখনও জানতাম না। খুব খারাপ এটি এইচটিটিপিএসের সাথে যেমন উইজেটের সমস্যা রয়েছে (এখনও কোনও সিএ চেইন সেটআপ করার কোনও উপায় খুঁজে পায়নি)
জেরোয়েন ওয়েয়ার্ট প্লুইমার্স

2

ব্যাচ এটি করতে সক্ষম নাও হতে পারে তবে আপনি উইন্ডোজের সাথে ডিফল্টরূপে ইনস্টল না থাকা সরঞ্জামগুলি ব্যবহার করতে না চাইলে আপনি জেএসক্রিপ্ট বা ভিবিএস স্ক্রিপ্ট ব্যবহার করতে পারেন।

এই পৃষ্ঠার প্রথম উদাহরণটি ভিবিএস স্ক্রিপ্টে একটি বাইনারি ফাইল ডাউনলোড করে: http://www.robvenderwoude.com/vbstech_internet_download.php

এই এই উত্তরটি জেএসক্রিপ্ট (আইএমও, আরও ভাল ভাষা) ব্যবহার করে একটি ফাইল ডাউনলোড করে: উইন্ডোজ স্ক্রিপ্ট হোস্ট (jscript): আমি কীভাবে বাইনারি ফাইল ডাউনলোড করব?

আপনার ব্যাচের স্ক্রিপ্টটি কেবল কোনও জেএসক্রিপ্ট বা ভিবিএস স্ক্রিপ্ট থেকে কল করতে পারে যা ফাইলটি ডাউনলোড করে।


2

এটি গেম সার্ভার প্রকল্পের জন্য নিম্নলিখিত কাজগুলি করা উচিত। এটি জিপটি ডাউনলোড করবে এবং এটি আপনাকে যে কোনও ডিরেক্টরি নির্দেশ করবে তা এটিকে নিষ্কাশন করবে।

Name.bat বা name.cmd হিসাবে সংরক্ষণ করুন

@echo off
set downloadurl=http://media.steampowered.com/installer/steamcmd.zip
set downloadpath=C:\steamcmd\steamcmd.zip
set directory=C:\steamcmd\
%WINDIR%\System32\WindowsPowerShell\v1.0\powershell.exe -Command "& {Import-Module BitsTransfer;Start-BitsTransfer '%downloadurl%' '%downloadpath%';$shell = new-object -com shell.application;$zip = $shell.NameSpace('%downloadpath%');foreach($item in $zip.items()){$shell.Namespace('%directory%').copyhere($item);};remove-item '%downloadpath%';}"
echo download complete and extracted to the directory.
pause

আসল: https://github.com/C0nw0nk/SteamCMD-AutoUpdate-Any-Gameserver/blob/master/steam.cmd


আমি .exe ডাউনলোড করতে চাই এবং আমি এই কোডটি ব্যবহার করেছি এবং কাজ করে নি .. আমি কি ব্যাচ স্ক্রিপ্ট ব্যবহার করে .exe ডাউনলোড করতে পারি?
এমএএস। জন

1

আমি এই ভিবি স্ক্রিপ্টটি পেয়েছি:

http://www.olafrv.com/?p=385

একটি যাদুমন্ত্র মত কাজ করে. খুব সাধারণ ফাংশন কল সহ একটি ফাংশন হিসাবে কনফিগার করা হয়েছে:

SaveWebBinary "http://server/file1.ext1", "C:/file2.ext2"

মূলত: http://www.ericphelps.com/scriptting/sample/BinaryDownload/index.htm থেকে

অপ্রয়োজনীয়তার জন্য এখানে পুরো কোডটি রয়েছে:

Function SaveWebBinary(strUrl, strFile) 'As Boolean
Const adTypeBinary = 1
Const adSaveCreateOverWrite = 2
Const ForWriting = 2
Dim web, varByteArray, strData, strBuffer, lngCounter, ado
    On Error Resume Next
    'Download the file with any available object
    Err.Clear
    Set web = Nothing
    Set web = CreateObject("WinHttp.WinHttpRequest.5.1")
    If web Is Nothing Then Set web = CreateObject("WinHttp.WinHttpRequest")
    If web Is Nothing Then Set web = CreateObject("MSXML2.ServerXMLHTTP")
    If web Is Nothing Then Set web = CreateObject("Microsoft.XMLHTTP")
    web.Open "GET", strURL, False
    web.Send
    If Err.Number <> 0 Then
        SaveWebBinary = False
        Set web = Nothing
        Exit Function
    End If
    If web.Status <> "200" Then
        SaveWebBinary = False
        Set web = Nothing
        Exit Function
    End If
    varByteArray = web.ResponseBody
    Set web = Nothing
    'Now save the file with any available method
    On Error Resume Next
    Set ado = Nothing
    Set ado = CreateObject("ADODB.Stream")
    If ado Is Nothing Then
        Set fs = CreateObject("Scripting.FileSystemObject")
        Set ts = fs.OpenTextFile(strFile, ForWriting, True)
        strData = ""
        strBuffer = ""
        For lngCounter = 0 to UBound(varByteArray)
            ts.Write Chr(255 And Ascb(Midb(varByteArray,lngCounter + 1, 1)))
        Next
        ts.Close
    Else
        ado.Type = adTypeBinary
        ado.Open
        ado.Write varByteArray
        ado.SaveToFile strFile, adSaveCreateOverWrite
        ado.Close
    End If
    SaveWebBinary = True
End Function

1

এই প্রশ্নের এখানে খুব ভাল উত্তর আছে । আমার কোডটি সম্পূর্ণরূপে কিছু সংশোধন করে উত্তরটির ভিত্তিতে তৈরি।

Wget.bat হিসাবে স্নিপেটের নীচে সংরক্ষণ করুন এবং এটি আপনার সিস্টেমের পথে রাখুন (যেমন এটি একটি ডিরেক্টরিতে রাখুন এবং এই ডিরেক্টরিটি সিস্টেমের পথে যুক্ত করুন))

আপনি এটি আপনার ক্লাইমে নিম্নরূপ ব্যবহার করতে পারেন:

wget url/to/file [?custom_name]

যেখানে url_to_fileবাধ্যতামূলক এবং custom_namealচ্ছিক

  1. যদি নাম সরবরাহ না করা হয় তবে ডাউনলোড করা ফাইলটি ইউআরএল থেকে নিজের নামে সংরক্ষণ করা হবে।
  2. যদি নাম সরবরাহ করা হয় তবে ফাইলটি নতুন নামে সংরক্ষণ করা হবে।

ফাইল ইউআরএল এবং সংরক্ষিত ফাইলের নামগুলি অ্যাসি রঙিন পাঠ্যে প্রদর্শিত হয়। যদি এটি আপনার সমস্যার কারণ হয়ে থাকে, তবে এই গিথুব প্রকল্পটি দেখুন।

@echo OFF
setLocal EnableDelayedExpansion
set Url=%1
set Url=!Url:http://=!
set Url=!Url:/=,!
set Url=!Url:%%20=?!
set Url=!Url: =?!

call :LOOP !Url!

set FileName=%2
if "%2"=="" set FileName=!FN!

echo.
echo.Downloading: [1;33m%1[0m to [1;33m\!FileName![0m

powershell.exe -Command wget %1 -OutFile !FileName!

goto :EOF
:LOOP
if "%1"=="" goto :EOF
set FN=%1
set FN=!FN:?= !
shift
goto :LOOP

PS এই কোডটি আপনার পাওয়ারশেল ইনস্টল করা প্রয়োজন।


1

আপনি উইজেট ব্যবহার করে একটি নির্ধারিত টাস্ক সেটআপ করতে পারেন, নির্ধারিত টাস্কে "রান" ফিল্ডটি ব্যবহার করুন:

C:\wget\wget.exe -q -O nul "http://www.google.com/shedule.me"

1

উইন্ডোজে একটি ইউটিলিটি রয়েছে (সিএমডি সহ থাকে) যা সিএমডি থেকে চালানো যেতে পারে (যদি আপনার লেখার অ্যাক্সেস থাকে):

set url=https://www.nsa.org/content/hl-images/2017/02/09/NSA.jpg
set file=file.jpg
certutil -urlcache -split -f %url% %file%
echo Done.

উইন্ডোজ অ্যাপ্লিকেশন মধ্যে নির্মিত। বাহ্যিক ডাউনলোডের দরকার নেই।

উইন 10 এ পরীক্ষা করা হয়েছে


-3

এফটিপি ব্যবহার করুন:

(ftp *yourewebsite.com*-a)
cd *directory*
get *filename.doc*
close

আপনার অবস্থার সাথে মানানসই তারকাচিহ্নের মধ্যে সবকিছু পরিবর্তন করুন।


এফটিপি সমর্থন করার জন্য ফাইল হোস্টিং সার্ভারের উপর অবশ্যই নির্ভর করুন।
পিএনপি

কোয়েস্টিন এইচটিপি সম্পর্কিত, এফটিপি নয়
বেন
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.