Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Найти значение в выводе curl и установить как переменную

Ответить
Настройки темы
CMD/BAT - [решено] Найти значение в выводе curl и установить как переменную

Аватара для Mancoffee

Старожил


Сообщения: 426
Благодарности: 10


Конфигурация

Профиль | Отправить PM | Цитировать


Есть скрипт для скачивания последнего релиза с 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!
    )
)
Проблем с другими не было, потому что мне было достаточно указать конец называния релиза, например x86-64.tar|zip|и т.д., а теперь мне нужно указать начало, в данном случае SiriKaliQt6 (потому что там есть и SiriKaliQt5) и конец setup.exe|zip. То есть мне нужно посредине вставить tag_name или name из вывода curl, который выдаёт из api github.
Как это сделать попроще?

Отправлено: 10:56, 22-01-2025

 

Аватара для YuS_2

Crazy


Contributor


Сообщения: 1221
Благодарности: 511

Профиль | Отправить PM | Цитировать


Цитата Mancoffee:
Желание есть, но вот скажи, какой мне смысл тратить годы на изучение, чтобы что? »
Чтобы не напрягая никого и ни у кого ничего не прося, всё, что нужно сделать - забацать самостоятельно. Раз уж потребности возникают периодически.

Цитата Mancoffee:
Понятно, что с учётом того, что уже не тот возраст »
ЛюбвиЗнаниям и учебе (век живи - век учись) все возрасты покорны...

Цитата Mancoffee:
И это команда, которую взял у человека, у которого она же работает.
И вот это вот cmdlet самая такая, которая встречается в ~80% случаев. И решения слишком разные, слишком невнятные и поэтому ... »
Для того, чтобы пользоваться инструментом, необходимо изучить инструкцию по его применению. Или настоящие хакеры мануалов не читают?
Get-WmiObject
Командлет был удален, а чем пользоваться вместо него - написано в документации.
Живой язык на месте не стоит, он развивается и видоизменяется - в этом нет ничего удивительного. А мертвый - ну, о мертвых, либо хорошо, либо ничего.

Цитата Mancoffee:
Это относится к философии/и т.д., а не к решению задачи. »
Тем не менее... если оно не надо Вам, то зачем оно мне, дяде Васе, Феде или кому бы то ни было ещё?

-------
scio me nihil scire. Ѫ

Это сообщение посчитали полезным следующие участники:

Отправлено: 21:00, 28-01-2025 | #21



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для Mancoffee

Старожил


Сообщения: 426
Благодарности: 10

Профиль | Отправить PM | Цитировать


Цитата YuS_2:
Знаниям и учебе (век живи - век учись) все возрасты покорны... »
Я о времени, а не о возрасте.
Цитата YuS_2:
Get-WmiObject »
Так я на это всё время намекал, что это же нужно следить, что где и когда, плюс синтаксис меняется, нужно перечитывать, переучивать. Интересоваться читать и т.д. А это то самое - время.
И какой смысл для простого юзера мне в такие дебри лезть, когда учил "с детства" bat, который ближе, более знакомый, у тебя в голове больше информации о нём, там ничего не меняется. Ради чего?
Когда-то было время и желание и т.д. Я следил за новостями, потому что нужно было и интересно. И я знаю, что это такое и сколько это занимает времени. Но если тогда я на этом деньги зарабатывал, то сейчас нет. И сегодня моё время НЕ РАВНО потраченному времени на изучение "живого языка", чтобы что? Написать один скрипт, который можно написать на более знакомом языке и соответственно потратить в разы меньше времени.
Цитата YuS_2:
Чтобы не напрягая никого и ни у кого ничего не прося, всё, что нужно сделать - забацать самостоятельно »
Цитата YuS_2:
Тем не менее... если оно не надо Вам, то зачем оно мне, дяде Васе, Феде или кому бы то ни было ещё? »
Всегда, без исключений. если мне попадается ситуация, в которой я могу и знаю, как помочь, я это делаю, при чём в максимальных подробностях.
Поэтому всегда обращаясь на форумы я предполагаю, что есть такие же люди, но с другим уровнем знаний или просто со знаниями других языков и т.д.
Если не ошибаюсь, то форумы для того и существуют, чтобы помогать, а не обучать (точнее это тоже, но когда человек сам этого хочет).

Последний раз редактировалось Mancoffee, 28-01-2025 в 23:43.


Отправлено: 23:08, 28-01-2025 | #22


Аватара для YuS_2

Crazy


Contributor


Сообщения: 1221
Благодарности: 511

Профиль | Отправить PM | Цитировать


Цитата Mancoffee:
Так я на это всё время намекал, что это же нужно следить, что где и когда, плюс синтаксис меняется, нужно перечитывать, переучивать. »
Я тебе один умный вещь скажу, но только ты не обижайся©
Не надо следить, даже более того, не обязательно всем-всем-всем голову забивать... достаточно научиться базовым вещам, а потом использовать документацию, особенно в тех случаях, которые вызывают исключение.

Цитата Mancoffee:
И какой смысл для простого юзера мне в такие дебри лезть, когда учил "с детства" bat, который ближе, более знакомый »
Ну, я же говорю... лопатой-то, оно проще и главное, моск напрягать не надо ни в одном из вопросов... и бензы не надо, и в землю ничего не закапывается, и не ломается... всё просто и понятно!
Только вот, если говорить о времени, про которое Вы постоянно толкуете, в большинстве случаев - лучше не сравнивать. Не в пользу лопаты оно будет...

Цитата Mancoffee:
Всегда, без исключений. если мне попадается ситуация, в которой я могу и знаю, как помочь, я это делаю, при чём в максимальных подробностях. »
Вопрос не в этом... я говорю о том, что:
Если для решения Вашего вопроса, Вы пытаетесь сэкономить свое время, не желая "тратить его впустую на изучение инструмента", то почему Вы ждете, что другие люди, будут тратить уже свое время, на решение Вашего вопроса? Об этом задумайтесь.

Цитата Mancoffee:
Если не ошибаюсь, то форумы для того и существуют, чтобы помогать »
Форумы - не для "бесплатной скорой помощи" существуют. Они существуют для общения, для обмена мнениями, для получения знаний, ну и для принесения некоторой прибыли владельцам (не во всех случаях, но и для этого тоже), в первую очередь.
Т.е. не для получения и сортировки заявок на "сделайте мне красиво, а то я не хочу тратить время и напрягать мозги", понимаете разницу? Большинство форумов - это не техподдержка коммерческих компаний (да и у них, Вы не получите пожизненное бесплатное обслуживание, придется таки платить периодически), а место для общения, где более опытные могут дать совет новичкам. Но надо учитывать, что советы не всегда дают тем, кто хочет не научиться, а просто хочет, чтобы за него всё сделали. В этом проблема...

ЗЫ В общем, я ни в чем не хочу Вас убеждать или переубеждать - найдете себе помощь - хорошо, не найдёте - придется научиться или забить на проблему, которую попытались решить за счёт чужого времени. Как-то так, примерно.

-------
scio me nihil scire. Ѫ


Отправлено: 02:09, 29-01-2025 | #23


Аватара для Mancoffee

Старожил


Сообщения: 426
Благодарности: 10

Профиль | Отправить PM | Цитировать


Цитата YuS_2:
Форумы - не для "бесплатной скорой помощи" существуют »
В том числе. Иначе получается, что любой обратившийся автоматом становится "насильно" обучаемым. Или сделать форум полностью платным. То бишь помощь за деньги.
Но такого не будет с топ форумами и знаешь почему? Правильно! Потому что из топов они быстро превратятся в "дауны".
Цитата YuS_2:
Если для решения Вашего вопроса, Вы пытаетесь сэкономить свое время, не желая "тратить его впустую на изучение инструмента", то почему Вы ждете, что другие люди, будут тратить уже свое время, на решение Вашего вопроса? »
Я не буду задумываться, потому как этот вопрос уже давно решён.
Да, я хочу сэкономить время, потому что на полное понимание условно я потрачу полгода. При этом человек, который уже знает ответ, у него на помощь уйдёт условно 5 минут. И это по опыту и логике именно так.
Личный пример - есть много друзей знакомых и т.д. Друг меня просит настроить ПК, я прихожу и говорю, не дружище, или ты учишься, или платишь баблишко. Иначе никак. То бишь, человек работает например станочником на заводе, точит валы всякие. С самой юности учился на это и всю жизнь им работает. Приходит домой, включает ПК, а там BSOD с кучей "каракулей". Он такой "О! У меня есть Серёга, сча позвоню, он порешает", а я такой прихожу "Неее Андрюха, садись, читай, гугли, учись или давай денег, тогда помогу". Представляешь, какая пятая точка у него в голове в этот момент? Это тоже самое, что тебя поставить перед выбором - или учи квантовую физику, чтобы понимать процессы вселенной или давай денег, а я тебе в определённом вопросе расскажу как оно чего. При этом я глянул на ошибку, сходу понял "Ясно, драйвер корявый программулька поставила или после удаления не удалила свой sys.". Всё, вопрос решён, попили кофейку, поговорили о жизни, все довольны. Он вообще как маленький радуется, потому что сидел неделю, голову ломал.
Цитата YuS_2:
Только вот, если говорить о времени, про которое Вы постоянно толкуете, в большинстве случаев - лучше не сравнивать. Не в пользу лопаты оно будет... »
Если у человека есть поломанный трактор, но он никогда на нём не ездил и с ним не работал (достался в наследство), и он попросит помощи, то по твоей логике ты ему дашь книгу по его модели и скажешь "Учись!"? Или если ты знаешь, то подскажешь ему в чём может быть причина или как его настроить? За деньги или безоплатно?
Цитата YuS_2:
я ни в чем не хочу Вас убеждать или переубеждать - найдете себе помощь - хорошо, не найдёте - придется научиться или забить на проблему »
Та я ж тоже не переубеждаю. Та и если бы делал это, то какой смысл? Человека может переубедить три вещи - собственный опыт, факт и негативные факторы жизни.
Из 100% примерно 80-90 мне помогают бесплатно. Понятно, что помогают только потому (наверное), что я не прошу сделать мне супермега проект. Та и если такое нужно было, то уже понятно, что сам бы учился. А так например человек помог, я посмотрел на скрипт и хоть что-то, но понял. Так учиться можно, когда ты не собрался зарабатывать на этом или грызть многотомники по программированию.
Цитата YuS_2:
достаточно научиться базовым вещам »
Так база есть. То бишь образное понимание. Но мы же о другом.

Отправлено: 21:17, 31-01-2025 | #24


Аватара для YuS_2

Crazy


Contributor


Сообщения: 1221
Благодарности: 511

Профиль | Отправить PM | Цитировать


Цитата Mancoffee:
В том числе. Иначе получается, что любой обратившийся автоматом становится "насильно" обучаемым. Или сделать форум полностью платным. То бишь помощь за деньги. »
Не, это всё крайности... не о том речь.
Просто пример, именно данный топик. Вот, это, например:
Цитата Mancoffee:
мне было достаточно указать конец называния релиза, например x86-64.tar|zip|и т.д., а теперь мне нужно указать начало, в данном случае SiriKaliQt6 (потому что там есть и SiriKaliQt5) и конец setup.exe|zip. То есть мне нужно посредине вставить tag_name или name из вывода curl, который выдаёт из api github.
Как это сделать попроще? »
- говорит о том, что Вам приходилось разбираться в скриптах, как минимум. И если не получается сходу решить проблему - путь на форум и тут, конечно, скорее всего помогут. Ну, если не сильно трудозатратно... это да.
Но если приходит чел, говорит: "у меня проблема, её хочется решить, но ни времени, ни желания разбираться в способах решения нет - помогите". В этом случае, помощь не всегда, а скорее всего, очень редко осуществится.
Но другое непонятно:
1. Если говорят, что есть способ, делать всё проще и понятнее для вопрошающего, надо только разобраться в инструменте - а он в ответ: не, это нафик не надо, я лучше по-старинке, тем что умею и не хочу делать лучше и разбираться в новинках. Ну, как-то, мягко говоря, консервативно это.
2. Хорошо, если проблема не очень большая и возможностей cmd хватает - а если нет?

Цитата Mancoffee:
руг меня просит настроить ПК, я прихожу и говорю, не дружище, или ты учишься, или платишь баблишко. »
Нет, это не аналогичные ситуации. Друг - это друг, а если подойдет сосед, живет он через два дома, Вы его знать не знаете и видели-то пару раз за всю жизнь? А он - слушай, "друг", помоги, у меня тут комп поломался, почини, пожалуйста, мне самому некогда! Ну, не знаю... с какой радости-то?

Цитата Mancoffee:
Если у человека есть поломанный трактор, но он никогда на нём не ездил и с ним не работал (достался в наследство), и он попросит помощи, то по твоей логике ты ему дашь книгу по его модели и скажешь "Учись!"? Или если ты знаешь, то подскажешь ему в чём может быть причина или как его настроить? За деньги или безоплатно? »
И опять мимо... я говорю, о другом.
У человека есть рабочий трактор, но водить он его не умеет и он приходит с просьбой: " а помоги-ка мне поле вспахать", у меня нет времени и желания учиться водить этот трактор, никогда не испытывал желания. Получит он помощь?
Или по-другому, если уж трактор поломанный:
Помоги починить, но у меня нет ни инструмента, ни запчастей... но есть вот кувалда и ножовка, помоги, пожалуйста. Помогут? Ну, может попытаются... добить его до состояния хлама, только если.
Цитата Mancoffee:
Так база есть. То бишь образное понимание. Но мы же о другом. »
Почему о другом? Если база есть, то проблем с пользованием будет минимум. Затраты времени - мизерные. Почему бы не научиться? У страха, как обычно, глаза велики. Достаточно начать, но не методом тыка, а читая справку, которая у powershell встроенная имеется, а если недостаточно, то есть целые сайты от микрософта, пользуйся - не хочу, как говорится. Это в самом начале, когда информации не было в доступе, могли возникнуть проблемки, но сейчас-то чего?

ЗЫ Ну, да ладно... похоже, я уже перешел на уговоры и переубеждения, а ведь не хотел... Но раз уж накропал, пусть будет. А так, каждый сам решит, что ему ближе - то ли по форумам в поисках помощи тыкаться, то ли сделать собственными руками и именно так, как хотелось, а не так, как хочется помогающему

-------
scio me nihil scire. Ѫ


Отправлено: 13:15, 01-02-2025 | #25


Аватара для Mancoffee

Старожил


Сообщения: 426
Благодарности: 10

Профиль | Отправить PM | Цитировать


Цитата YuS_2:
Если говорят, что есть способ, делать всё проще и понятнее для вопрошающего, надо только разобраться в инструменте »
С небольшой поправкой - если это займёт много времени, а проблема не критична, просто мелочь для удобства, то понятно, что на фиг оно нужно.

Цитата YuS_2:
Хорошо, если проблема не очень большая и возможностей cmd хватает - а если нет? »
Это в эту же поправку.
Цитата YuS_2:
Вы его знать не знаете и видели-то пару раз за всю жизнь? »
Ну я знал, что мы плюс-минус к этому придём, если продолжим. И мы продолжили
Не поверишь, но помогаю и с радостью. И тут по ситуации, если человек от "сердца" отрывает копейку, то либо не беру, либо беру минимум из тех купюр, если этот сосед начинает упорно настаивать, чтобы я взял.
И тут дело не в безоплатности, как таковой, а в отношении
Цитата YuS_2:
У человека есть рабочий трактор, но водить он его не умеет и он приходит с просьбой: " а помоги-ка мне поле вспахать", у меня нет времени и желания учиться водить этот трактор, никогда не испытывал желания. Получит он помощь? »
Не поверишь Получит. У меня сосед такой был (земля ему пухом), как и многие в моей местности.
Цитата YuS_2:
Помоги починить, но у меня нет ни инструмента, ни запчастей... но есть вот кувалда и ножовка, помоги, пожалуйста. Помогут? Ну, может попытаются... добить его до состояния хлама »
И снова не поверишь. Помогут, принесут свой инструмент и починят, а вопрошающий при потребности будет онли подсобник.
Цитата YuS_2:
У страха, как обычно, глаза велики »
Та не, страх был когда-то, когда ещё php пробовал "кусать"
Время, просто время. Если бы это разбирательство в будущем сократило мне время в ~5 раз. Например запрограммировать тот же трактор на обработку своей площади, возможно и да. Ну а так смысл нулевой.
Цитата YuS_2:
Это в самом начале, когда информации не было в доступе, могли возникнуть проблемки, но сейчас-то чего? »
Тут приходим к следующей проблеме - ~80-90% официальных справок на инглиш. Да, инглиш учил сам (для того же программирования), но когда столкнулся уже с ним, то оказывается всё, что я учил помогло конечно, но не очень, потому что специфика. А это значит, что нужно ещё и его учить. Те, что с переводом, тот же M$ частенько дичь выдаёт там, где это имеет решающее значение. Понятно, что есть не официальные. но это э неофициальные, не та структура, не то понимание, как следствие не та структура, логика и т.д.

Переубедить меня нельзя

В целом я, как уже очень давно понял приходим к тому, что разные мировоззрения дают соответственно разное мышление и соответственно подход к тем или иным вопросам/задачам и т.д.

Цитата Uragan66:
Сейчас ИИ для powershell, и не только, "пишет" любые скрипты. Главное правильную установку ему дать, ну и потом под себя подогнать конечно. »
Да, попробовал. Недооценил
Аж жутко стало от его потенциала.
Что интересно, завёл с ним беседу по поводу управления миром и нехороших для него вещей и вообще, что он по сути зло. Начал отнекиваться и в тупую съезжать с темы
Прям просматривается скайнэт

Последний раз редактировалось Mancoffee, 03-02-2025 в 14:50.


Отправлено: 13:45, 03-02-2025 | #26


Ветеран


Сообщения: 547
Благодарности: 36

Профиль | Сайт | Отправить PM | Цитировать


Интересная у вас дискуссия)
Да, задачу сначала пробую решить батником, даже сложную. И если уж совсем невмоготу - берусь за пошик. Кто-то даже советует питоном латать.
Но в свое время реально дошел до "маразма": Если не хватало функциональности bat/cmd, то на готове, под парами стоял Delphi и нужный консольный экзешник, работающий с пайпом, errorlevel или еще с чемто, рождался за 10-120 мин...
Поитогу за годы работы накопился целый собственный "Resource Kit" (помните такие штатные были наборы у МS?)) который такскаю с собой..

-------
консольный клиент telegram для Windows: www.elapser.info


Последний раз редактировалось Опиум, 10-02-2025 в 09:54. Причина: errors)


Отправлено: 23:24, 09-02-2025 | #27


Ветеран


Сообщения: 547
Благодарности: 36

Профиль | Сайт | Отправить PM | Цитировать


Цитата Mancoffee:
из вывода curl »
кстати, коллеги....а встроенная в w10 утилита насколько отличается от текущей официальной портированной?

-------
консольный клиент telegram для Windows: www.elapser.info


Отправлено: 11:12, 10-02-2025 | #28


Аватара для DJ Mogarych

fascinating rhythm


Moderator


Сообщения: 6632
Благодарности: 1531

Профиль | Отправить PM | Цитировать


Встроенный несколько урезан по функциональности. Вот curl.exe из Windows 11:
Код: Выделить весь код
curl.exe -V

curl 8.10.1 (Windows) libcurl/8.10.1 Schannel zlib/1.3 WinIDN
Release-Date: 2024-09-18
Protocols: dict file ftp ftps http https imap imaps ipfs ipns mqtt pop3 pop3s smb smbs smtp smtps telnet tftp
Features: alt-svc AsynchDNS HSTS HTTPS-proxy IDN IPv6 Kerberos Largefile libz NTLM SPNEGO SSL SSPI threadsafe Unicode UnixSockets

-------
Powershell 7.x | Powershell 5.1 | ffmpeg (docs)

Это сообщение посчитали полезным следующие участники:

Отправлено: 13:46, 10-02-2025 | #29


Аватара для YuS_2

Crazy


Contributor


Сообщения: 1221
Благодарности: 511

Профиль | Отправить PM | Цитировать


Цитата Опиум:
насколько отличается от текущей официальной портированной? »
Цитата:
В сборке Microsoft curl отсутствуют несколько полезных функций:

нет поддержки списка публичных суффиксов (PSL), что делает невозможным предотвращение «супер-cookie»
нет поддержки HTTP/2 или HTTP/3
нет поддержки GOPHER(S), LDAP(S), RTMP, RTSP, SCP, SFTP, WS(S))
нет сжатия brotli или zstd
ссылка

-------
scio me nihil scire. Ѫ

Это сообщение посчитали полезным следующие участники:

Отправлено: 16:04, 10-02-2025 | #30



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Найти значение в выводе curl и установить как переменную

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
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
Как создать переменную, имя которой такоеже как значение + несколько латин. символов? E-mail Вебмастеру 12 26-11-2005 10:14
Как узнать переменную которой передается значение?? FADE Вебмастеру 2 30-06-2004 18:45




 
Переход