|
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
| Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Найти значение в выводе curl и установить как переменную |
|
|
CMD/BAT - [решено] Найти значение в выводе curl и установить как переменную
|
|
Старожил Сообщения: 431 |
Есть скрипт для скачивания последнего релиза с github
@ECHO OFF
SETLOCAL ENABLEDELAYEDEXPANSION
REM Specify the target repository
SET github_user=mhogomchungu
SET github_repo=sirikali
REM If you just want a specific version: specify a unique part of the file name
REM If you want to download all available assets: Delete after `=`
SET target_zip=SiriKaliQt6-1.8.0.setup.exe
SET target_exe=SiriKaliQt6-1.8.0.zip
FOR /f "tokens=1,* delims=:" %%A IN ('curl -ks https://api.github.com/repos/%github_user%/%github_repo%/releases/latest ^| findstr "browser_download_url"') DO (
SET url=%%B
IF NOT "!url:%target_zip%=!"=="!url!" (
ECHO Downloading !url!
curl -kOL !url!
)
)
FOR /f "tokens=1,* delims=:" %%A IN ('curl -ks https://api.github.com/repos/%github_user%/%github_repo%/releases/latest ^| findstr "browser_download_url"') DO (
SET url=%%B
IF NOT "!url:%target_exe%=!"=="!url!" (
ECHO Downloading !url!
curl -kOL !url!
)
)
Как это сделать попроще? |
|
|
Отправлено: 10:56, 22-01-2025 |
|
Старожил Сообщения: 232
|
Профиль | Отправить PM | Цитировать Цитата Mancoffee:
Ответ: Привет! Давай упростим твой скрипт для скачивания последнего релиза с GitHub, чтобы он мог динамически подставлять tag_name или name из ответа API. Мы можем использовать переменные для формирования нужного имени файла. Вот как это можно сделать: @ECHO OFF
SETLOCAL ENABLEDELAYEDEXPANSION
REM Specify the target repository
SET github_user=mhogomchungu
SET github_repo=sirikali
REM Get the latest release information
FOR /f "tokens=1,* delims=:" %%A IN ('curl -ks https://api.github.com/repos/%github_user%/%github_repo%/releases/latest ^| findstr "tag_name"') DO (
SET tag_name=%%B
SET tag_name=!tag_name:"=!
)
REM Define the patterns for the files you want to download
SET target_start=SiriKaliQt6
SET target_end=setup.exe
REM Download the files based on the tag_name
FOR /f "tokens=1,* delims=:" %%A IN ('curl -ks https://api.github.com/repos/%github_user%/%github_repo%/releases/latest ^| findstr "browser_download_url"') DO (
SET url=%%B
IF "!url!" NEQ "" (
IF "!url:%target_start%=!" NEQ "!url!" (
IF "!url:%target_end%=!" NEQ "!url!" (
ECHO Downloading !url!
curl -kOL !url!
)
)
)
)
Получение tag_name: Мы добавили команду для извлечения tag_name из ответа API. Это позволяет использовать его в дальнейшем. Проверка на начало и конец: Мы проверяем, содержит ли URL нужные префиксы и суффиксы, чтобы убедиться, что загружаем только нужные файлы. Теперь скрипт будет автоматически подставлять tag_name и загружать файлы, соответствующие заданным критериям. |
|
|
Отправлено: 12:42, 15-02-2025 | #31 |
|
|
Участник сейчас на форуме |
|
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
| Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
| CMD/BAT - [решено] cmd скрипт - получить данные по curl, извлечь одно значение и вывести его | Sick_013 | Скриптовые языки администрирования Windows | 2 | 07-04-2020 14:49 | |
| CMD/BAT - [решено] Добавить в реестр переменную именно как переменную %var% а не как ее значение | NoIZz | Скриптовые языки администрирования Windows | 3 | 13-08-2012 21:52 | |
| Установка - Как установить переменную среду для Windows 7? | Shrek1 | Microsoft Office (Word, Excel, Outlook и т.д.) | 3 | 28-08-2010 18:09 | |
| Как создать переменную, имя которой такоеже как значение + несколько латин. символов? | Вебмастеру | 12 | 26-11-2005 10:14 | ||
| Как узнать переменную которой передается значение?? | FADE | Вебмастеру | 2 | 30-06-2004 18:45 | |
|