Смотрите видео ниже, чтобы узнать, как установить наш сайт в качестве веб-приложения на домашнем экране.
Примечание: Эта возможность может быть недоступна в некоторых браузерах.
Привет! Для скачивания и удаления файлов в .bat файле можно использовать командыСкрипт скачивание и удаление файл и в процентах скачивание через .bat
curl
и del
соответственно. Для отслеживания процента скачивания можно использовать утилиту wget
.@echo off
setlocal EnableDelayedExpansion
set "url=https://example.com/file.zip"
set "filename=file.zip"
curl -o %filename% %url% > nul 2>&1 &
set /a count=0
:loop
timeout /t 1 > nul
for /f "tokens=2,3,4 delims=:.," %%a in ('wget --progress=bar:force:noscroll -O NUL %url% 2^>^&1 ^| findstr /r /c:"\.\.\."') do (
set /a "percent=%%a"
if !percent! GTR !count! (
set /a count=!percent!
echo !count!%% downloaded
)
)
tasklist /fi "imagename eq curl.exe" | find /i "curl.exe" > nul && goto loop
del %filename%
echo File deleted
curl
для скачивания файла с заданного URL и сохраняем его в файл с именем filename
. Затем мы используем утилиту wget
для отслеживания процента скачивания и выводим его в консоль. После завершения скачивания мы удаляем файл с помощью команды del
.Конечно, вот пример скрипта, который удаляет старый файл, скачивает новый файл и отслеживает процент скачивания:Сначала удалить старый файл , потом закачать новый файл и процент закачки через .bat.
@echo off
setlocal EnableDelayedExpansion
set "url=https://example.com/newfile.zip"
set "filename=newfile.zip"
set "oldfilename=oldfile.zip"
if exist %oldfilename% (
del %oldfilename%
echo Old file deleted
)
curl -o %filename% %url% > nul 2>&1 &
set /a count=0
:loop
timeout /t 1 > nul
for /f "tokens=2,3,4 delims=:.," %%a in ('wget --progress=bar:force:noscroll -O NUL %url% 2^>^&1 ^| findstr /r /c:"\.\.\."') do (
set /a "percent=%%a"
if !percent! GTR !count! (
set /a count=!percent!
echo !count!%% downloaded
)
)
tasklist /fi "imagename eq curl.exe" | find /i "curl.exe" > nul && goto loop
echo New file downloaded
oldfilename
, и если да, то удаляем его с помощью команды del
. Затем мы используем команду curl
для скачивания нового файла с заданного URL и сохраняем его в файл с именем filename
. Затем мы используем утилиту wget
для отслеживания процента скачивания и выводим его в консоль. После завершения скачивания мы выводим сообщение о том, что новый файл был загружен.Конечно, вот пример скрипта, который удаляет старый файл, скачивает новый файл с помощьюСначала удалить старый файл , потом закачать с помощью wget.exe новый файл и процент закачки через .bat , почему то командная строка не отображает в процентах.
wget.exe
и отслеживает процент скачивания:@echo off
setlocal EnableDelayedExpansion
set "url=https://example.com/newfile.zip"
set "filename=newfile.zip"
set "oldfilename=oldfile.zip"
if exist %oldfilename% (
del %oldfilename%
echo Old file deleted
)
wget -q --show-progress %url% -O %filename%
echo New file downloaded
oldfilename
, и если да, то удаляем его с помощью команды del
. Затем мы используем утилиту wget.exe
для скачивания нового файла с заданного URL и сохраняем его в файл с именем filename
. Мы также используем опцию -q
, чтобы скрыть вывод команды wget
, и опцию --show-progress
, чтобы отображать процент скачивания.Если командаЭто не работает в процентах , может есть алтернативный?
wget
не отображает процент скачивания в консоли, то можно воспользоваться утилитой bitsadmin
, которая доступна в Windows. Вот пример скрипта, который удаляет старый файл, скачивает новый файл с помощью bitsadmin.exe
и отслеживает процент скачивания:@echo off
setlocal EnableDelayedExpansion
set "url=https://example.com/newfile.zip"
set "filename=newfile.zip"
set "oldfilename=oldfile.zip"
if exist %oldfilename% (
del %oldfilename%
echo Old file deleted
)
bitsadmin /transfer "Downloading" %url% %filename% > nul
set /a count=0
:loop
timeout /t 1 > nul
for /f "tokens=2,3,4 delims=:.," %%a in ('bitsadmin /info "Downloading" ^| findstr /i /c:"progress:"') do (
set /a "percent=%%a"
if !percent! GTR !count! (
set /a count=!percent!
echo !count!%% downloaded
)
)
bitsadmin /info "Downloading" | find /i "transferred: 100%" > nul || goto loop
echo New file downloaded
oldfilename
, и если да, то удаляем его с помощью команды del
. Затем мы используем утилиту bitsadmin.exe
для скачивания нового файла с заданного URL и сохраняем его в файл с именем filename
. Мы также используем команду timeout
, чтобы задержать выполнение скрипта на 1 секунду, и цикл :loop
, чтобы отслеживать процент скачивания. В конце мы выводим сообщение о том, что новый файл был загружен.Я извиняюсь за неудобства. Если вы хотите использовать другой вариант для отслеживания процента скачивания, то можно воспользоваться PowerShell. Вот пример скрипта, который удаляет старый файл, скачивает новый файл с помощьюнет, вы не так делаете , другой вариант.
Invoke-WebRequest
и отслеживает процент скачивания:@echo off
setlocal EnableDelayedExpansion
set "url=https://example.com/newfile.zip"
set "filename=newfile.zip"
set "oldfilename=oldfile.zip"
if exist %oldfilename% (
del %oldfilename%
echo Old file deleted
)
powershell -Command "(New-Object System.Net.WebClient).DownloadFile('%url%', '%filename%')"
set /a count=0
:loop
timeout /t 1 > nul
for /f "tokens=3 delims=: " %%a in ('powershell -Command "$ProgressPreference = 'SilentlyContinue'; Write-Progress -Activity 'Downloading' -Status 'Progress' -PercentComplete ((Get-Item '%filename%').Length / (Invoke-WebRequest '%url%').Headers.'Content-Length' * 100)"') do (
set /a "percent=%%a"
if !percent! GTR !count! (
set /a count=!percent!
echo !count!%% downloaded
)
)
if not exist %filename% goto loop
echo New file downloaded
oldfilename
, и если да, то удаляем его с помощью команды del
. Затем мы используем команду powershell
для скачивания нового файла с заданного URL и сохраняем его в файл с именем filename
. Мы также используем цикл :loop
, чтобы отслеживать процент скачивания с помощью команды powershell
. В конце мы выводим сообщение о том, что новый файл был загружен.