wadimus
  - Стаж: 8 лет 5 месяцев
- Сообщений: 749
- Репутация:91[+] [-]
|
мда .. опять привязка к файлам в тернете:SetEnvironment="Var_x86=https://rm-eu.palemoon.org/release/palemoon-30.0.0.win32.installer.exe" SetEnvironment="Var_x64=https://rm-eu.palemoon.org/release/palemoon-30.0.0.win64.installer.exe" а если вышла новая версия? вот мой батник (без привязки к номеру, версия определяется из скачанного инсталлятора, при качании - защита от дурака)@echo off mode con cols=85 lines=5 SetLocal EnableExtensions EnableDelayedExpansion CD /d "%~dp0" echo ... Pale Moon set "g1=http://www.palemoon.org/download.php?mirror=eu&bits=32&type=installer" set "g2=http://www.palemoon.org/download.php?mirror=eu&bits=64&type=installer" set "w1=Palemoon-x86.exe" set "w2=Palemoon-x64.exe" set "w4=setup.exe" echo.?> "%~dp0alarm.txt" cls if exist "%~dp0%w1%" ( for %%a in ("%~dp0%w1%") do set "fsize=%%~za" ) else ( set "fsize=0" ) ("%~dp0..\Scripts\get.exe" S "%g1%") >"%~dp0down.txt" Set /p nsize=<"%~dp0down.txt" if %fsize% NEQ %nsize% ( "..\Scripts\aria2c.exe" "%g1%" --check-certificate=false --console-log-level=error --file-allocation=none --allow-overwrite=true -x8 -s8 -o "%w1%.~" for %%a in ("%~dp0%w1%.~") do set size=%%~za if !size!==0 goto 1 del "%~dp0%w1%" /q ren "%~dp0%w1%.~" "%w1%" echo %date%> "%~dp0date.txt" ) cls if exist "%~dp0%w2%" ( for %%a in ("%~dp0%w2%") do set "fsize=%%~za" ) else ( set "fsize=0" ) ("%~dp0..\Scripts\get.exe" S "%g2%") >"%~dp0down.txt" Set /p nsize=<"%~dp0down.txt" if %fsize% NEQ %nsize% ( "..\Scripts\aria2c.exe" "%g2%" --check-certificate=false --console-log-level=error --file-allocation=none --allow-overwrite=true -x8 -s8 -o "%w2%.~" for %%a in ("%~dp0%w2%.~") do set size=%%~za if !size!==0 goto 1 del "%~dp0%w2%" /q ren "%~dp0%w2%.~" "%w2%" echo %date%> "%~dp0date.txt" ) "%~dp0..\Scripts\7z.exe" e "%~dp0%w1%" -y -o"%~dp0" "%w4%" ("%~dp0..\Scripts\filever.exe" /A /D /V "%~dp0%w4%" | findstr /R /C:"ProductVersion") >"%~dp0down.txt" FOR /F "usebackq tokens=2" %%a in ("%~dp0down.txt") do set f=%%a del "%~dp0%w4%" /q echo %f%> "%~dp0version.txt" del "%~dp0alarm.txt" /q :1 del "%~dp0down.txt" /q del "%~dp0*.~" /q файл alarm.txt - создается в начале работы батника, после успешного окончания скачивания - он удаляется. если после работы скачки тот файл остается: - то работа батника считается неуспешной. -возможно один или несколько инсталляторов недокачаны. - если в ячейке уже были старые инсталляторы - то они остаются. - ячейка считается неуспешной. решить проблему неуспешной ячейки - запустить батник заново. Добавлено через 1 час 26 минут 3 секунды: Tor Browser Bundle FTP ftp-оффсайт https://dist.torproject.org/torbrowser/ указатели на папки, где находятся инсталляторы нам нужно найти самый последний, где нет букв а и протчих символовset "h1=https://dist.torproject.org/torbrowser/" set "d1=href.*[0-9][.].[^a-b]" h1 - исходный сайт для парсинга d1 - поисковое выражение для поиска выделяем все строки парсингом. результат пишем в файл down.txt .. последняя строка - наша.("%~dp0..\Scripts\http2cli.exe" "%h1%" 2| findstr /R /C:"%d1%") >"%~dp0down.txt" for %%a in ("%~dp0down.txt") do set size=%%~za if %size%==0 goto 1 метка 1 - файл пустой - проблемы с тернетом, на выход ищем номер и по нему вычисляем исходные ссылки на наши инсталляторыFOR /F "usebackq tokens=7 delims=+++/" %%a in ("%~dp0down.txt") do set "f=%%a" set "g1=https://dist.torproject.org/torbrowser/%f%/torbrowser-install-%f%_ru.exe" set "g2=https://dist.torproject.org/torbrowser/%f%/torbrowser-install-win64-%f%_ru.exe" качаем исходные инсталляторы с защитой от дурака
|
 Отправлено: 20-Мар-2022 18:55
(спустя 1 час 11 минут)
wadimus
  - Стаж: 8 лет 5 месяцев
- Сообщений: 749
- Репутация:91[+] [-]
|
OpenShellStart_Online ячейка Open-Shell-Menu - без привязки номера - без скачивания всяких арий (вернее без скачивания х64-версии арии) - таки все нужные утилиты для качания, парсинга уже есть! - версия вычисляется во время парсинга - скачивание с защитой от дурака (если в тернете есть аналогичный инсталлятор - по размеру! проверка без скачивания! - то он не качается!) в ячейке есть все информационные потоки: - название - описание - дата последнего успешного скачивания - версия инсталлятора - иконка - принадлежность к группе - это файл group.txt - в нем число 11 - по общему файлу all-group.txt:11= - Win7-8-10 : StartMenu - характеристика ячейки - файл name1.txt - в нём число 11:1. - возможность авто-обновления 0. - авто-обновление невозможно .0 - инсталлятор не автомат .1 - инсталлятор автомат .2 - в ячейке архив .3 - в ячейке портабель и в ячейке есть 2(!) файла (батника) для управления: - файл up.bat - для обновления инсталлятора - файл ins.bat - для установки инсталлятора ячейка самодостаточна - её можно добавить в свою сборку или убрать, если она не нужна. файл Open-Shell-Menu.rar ЯД: https://disk.yandex.ru/d/rpVKVR_WcltqTw ЗЫ. версия - файл version.txt - в нём число 4.4.169-beta Добавлено через 10 минут 56 секунд: ячейка Notepad++ ЯД - такой-же файл Notepad++.rar ячейку делал 2 года назад - скачивание идет еще через axel.exe - нравились полоски :) сейчас становлюсь арийцем - качаю файлы через aria2c.exe ЗЫ. версия получилась такая: 8.3.3.0
|
dimo70
 - Стаж: 7 лет 4 месяца
- Сообщений: 3796
- Репутация:27[+] [-]
- Откуда: BG
|
ячейка Notepad++ ЯД - такой-же файл Notepad++.rar ячейку делал 2 года назад - скачивание идет еще через axel.exe - нравились полоски :) сейчас становлюсь арийцем - качаю файлы через aria2c.exe ЗЫ. версия получилась такая: 8.3.3.0  wadimus, слегка переделал, но заметил что на x64 ставит x86.
Последний раз редактировалось: dimo70 (2022-03-20 19:21), всего редактировалось 1 раз _________________ Подпись отключена за нарушение правил форума
|
wadimus
  - Стаж: 8 лет 5 месяцев
- Сообщений: 749
- Репутация:91[+] [-]
|
ЗЗЫ. чтобы получить пустые ячейки (я их называю высушенные) - удалить в ячейках инсталляторы (exe-файлы или msi-файлы) и файлы версий version.txt .. можно удалить файлы date.txt - в них записана дата успешного обновления ячейки. при обновлении файлы заново создадутся (скачаются) и в них будет новая информация. если инсталляторов в ячейке 2 - можно удалить любой из них (или все) - нужные инсталляторы заново скачаются (обновятся) - также обновятся файлы date.txt и version.txt если при обновлении в ячейке появится файл alarm.txt - то это ошибка обновления (нет тернета, сами прервали обновление). файл alarm.txt означает - в тернете есть свежие, более новые инсталляторы - но они не скачались или не докачались. однако, в ячейке есть старые версии инсталляторов - установка сработает и без новых версий. решить проблему файла alarm.txt - устранить проблему с тернетом, остановить шаловливые ручки (скачивание иногда длительный процесс - поэтому не закрывать CMD-окна) и заново запустить обновление. успешная ячейка - в ней нет файла alarm.txt Добавлено через 4 минуты 57 секунд:
93919заметил что на x64 ставит x86. ins.bat.. if defined ProgramW6432 ( set file=npp.Installer-x64.exe ) else ( set file=npp.Installer-x86.exe ) start /wait %file% /S
|
dimo70
 - Стаж: 7 лет 4 месяца
- Сообщений: 3796
- Репутация:27[+] [-]
- Откуда: BG
|
Да, ins.bat такой же:@echo off mode con cols=65 lines=5 CD /d "%~dp0" chcp 1251 | rem Set /p n=<"%~dp0name.txt" Set /p v=<"%~dp0version.txt" @echo ---------------------------- @echo Install : %n% @echo Version : %v% @echo ---------------------------- if defined ProgramW6432 ( set file=npp.Installer-x64.exe ) else ( set file=npp.Installer-x86.exe ) start /wait %file% /S и все таки на 1064 ставит х86
_________________ Подпись отключена за нарушение правил форума
|
wadimus
  - Стаж: 8 лет 5 месяцев
- Сообщений: 749
- Репутация:91[+] [-]
|
тут: https://github.com/notepad-plus-plus/notepad-plus-plus/releases первым по списку идет х86 инсталлятор: npp.8.3.3.Installer.exe - он качается в файл npp.Installer-x86.exe соотв. далее идет х64 инсталлятор: npp.8.3.3.Installer.x64.exe - он качается в файл npp.Installer-x64.exe они по весу разные (х64 больше)
|
dimo70
 - Стаж: 7 лет 4 месяца
- Сообщений: 3796
- Репутация:27[+] [-]
- Откуда: BG
|
wadimus, глянь вот это. Вроде все должно быть именно так, но на 64 ставит 32 бит. Сперва запускается up.bat, потом ins.bat. Скачивает обе версии без проблем, но устанавливается х86
_________________ Подпись отключена за нарушение правил форума
|
wadimus
  - Стаж: 8 лет 5 месяцев
- Сообщений: 749
- Репутация:91[+] [-]
|
dimo70,в файле 1.txt погляди строкуProgramW6432=C:\Program Files она есть у тебя?
|
dimo70
 - Стаж: 7 лет 4 месяца
- Сообщений: 3796
- Репутация:27[+] [-]
- Откуда: BG
|
wadimus, проверю.  да, сгенерировался файл 1.txt и внутри есть ProgramW6432=C:\Program Files
_________________ Подпись отключена за нарушение правил форума
|
Ander_73
  - Стаж: 8 лет 2 месяца
- Сообщений: 3983
- Репутация:127[+] [-]
|
93923но на 64 ставит 32 бит SysWOW64if exist %windir%\sysnative\ %windir%\sysnative\cmd /c "%~f0" %*& exit
|
dimo70
 - Стаж: 7 лет 4 месяца
- Сообщений: 3796
- Репутация:27[+] [-]
- Откуда: BG
|
Не знаю в чем дело, но заметил, что два файла установчика, которые скачиваются в папку с разрядность противоположная имени файла - на х86 соответствует х64 сетап и наоборот. Почему так получается не понятно. Видимо проблема произходит еще при закачки через up.bat.@echo off mode con cols=65 lines=5 SetLocal EnableExtensions EnableDelayedExpansion CD /d "%~dp0" echo ... Setup Notepad++ set "h1=https://github.com/notepad-plus-plus/notepad-plus-plus/releases" set "d1=download/.*[.]exe" set "w1=npp.Installer-x86.exe" set "w2=npp.Installer-x64.exe" echo.?> "%~dp0alarm.txt" ("%~dp0\Scripts\http2cli.exe" "%h1%" 2| findstr /R /C:"%d1%") >"%~dp0down.txt" for %%a in ("%~dp0down.txt") do set size=%%~za if %size%==0 goto 1 <"%~dp0down.txt" (for /f "tokens=1* delims=[]" %%a in ('find /n /v ""') do set "s%%a=%%b") FOR /F "tokens=2 delims=+++" %%a in ("%s1%") do set "g1=https://github.com%%a" FOR /F "tokens=2 delims=+++" %%a in ("%s3%") do set "g2=https://github.com%%a" FOR /F "tokens=7 delims=/" %%a in ("%g1%") do set "f=%%a" set f=%f:*v=% if exist "%~dp0%w1%" ( for %%a in ("%~dp0%w1%") do set "fsize=%%~za" ) else ( set "fsize=0" ) ("%~dp0\Scripts\netsize.exe" "%g1%") >"%~dp0down.txt" Set /p nsize=<"%~dp0down.txt" if %fsize% NEQ %nsize% ( "%~dp0\Scripts\axel.exe" "%g1%" -k -a -n 8 -o "%~dp0%w1%.~" for %%a in ("%~dp0%w1%.~") do set size=%%~za if !size!==0 goto 1 del "%~dp0%w1%" /q ren "%~dp0%w1%.~" "%w1%" echo %date%> "%~dp0date.txt" ) if exist "%~dp0%w2%" ( for %%a in ("%~dp0%w2%") do set "fsize=%%~za" ) else ( set "fsize=0" ) ("%~dp0\Scripts\netsize.exe" "%g2%") >"%~dp0down.txt" Set /p nsize=<"%~dp0down.txt" if %fsize% NEQ %nsize% ( "%~dp0\Scripts\axel.exe" "%g2%" -k -a -n 8 -o "%~dp0%w2%.~" for %%a in ("%~dp0%w2%.~") do set size=%%~za if !size!==0 goto 1 del "%~dp0%w2%" /q ren "%~dp0%w2%.~" "%w2%" echo %date%> "%~dp0date.txt" ) ("%~dp0\Scripts\filever.exe" /A /D "%~dp0%w1%") >"%~dp0down.txt" FOR /F "usebackq tokens=4" %%a in ("%~dp0down.txt") do set f=%%a echo %f%> "%~dp0version.txt" del "%~dp0alarm.txt" /q :1 del "%~dp0down.txt" /q del "%~dp0*.~" /q
_________________ Подпись отключена за нарушение правил форума
|
Страница 49 из 95
Текущее время: 21-Апр 07:34
Часовой пояс: UTC + 3
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах Вы не можете прикреплять файлы к сообщениям Вы можете скачивать файлы
|
|