Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   [решено] Найти значение в выводе curl и установить как переменную (http://forum.oszone.net/showthread.php?t=356072)

Mancoffee 22-01-2025 10:56 3035319

Найти значение в выводе curl и установить как переменную
 
Есть скрипт для скачивания последнего релиза с 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.
Как это сделать попроще?

NickM 22-01-2025 13:23 3035323

Что-то типа такого:
Код:

@ECHO OFF
SETLOCAL ENABLEDELAYEDEXPANSION

REM Specify the target repository
SET "github_user=mhogomchungu"
SET "github_repo=sirikali"
SET "packagename=SiriKaliQt"
SET "packagever=5"

REM setup.exe
FOR /f "tokens=1,* delims=:" %%A IN ('curl -ks https://api.github.com/repos/%github_user%/%github_repo%/releases/latest ^| findstr "browser_download_url" ^| findstr "%packagename%%packagever%" ^| findstr ".exe" ^| findstr /v ".asc"') DO (
  echo.%%B
)


SQLai Lama 25-01-2025 19:40 3035425

Код:

curl -ks https://api.github.com/repos/mhogomchungu/sirikali/releases/latest | yq -o=json ".assets[].browser_download_url|select(. == \"*Qt6*.exe\")"

DJ Mogarych 25-01-2025 21:11 3035427

Код:

FOR /F "delims=" %%a IN ('powershell -c "(curl.exe -ks https://api.github.com/repos/mhogomchungu/sirikali/releases/latest |ConvertFrom-Json).assets.browser_download_url -match 'qt6.*exe$'"') DO @set "var=%%a"

curl.exe -kOL %var%


SQLai Lama 26-01-2025 16:07 3035440

DJ Mogarych, есть ли смысл в curl при использовании powershell? Лучше, пожалуй, так:
Код:

((iwr https://api.github.com/repos/mhogomchungu/sirikali/releases/latest).Content | convertfrom-json).assets.browser_download_url -match 'qt6.*exe$'

DJ Mogarych 26-01-2025 18:54 3035444

Автору потребен cmd/bat. Понятно, что лично я бы такое не использовал.
А curl.exe входит в стандартную поставку Windows уже лет 10.

SQLai Lama 26-01-2025 19:16 3035446

DJ Mogarych, да будь даже curl не штатным, речь то в конечном итоге о powershell. И да, странно, что даже спустя ~19 лет после выхода первой версии powershell, люди напирают на cmd\bat, ограниченные кодировками и прочими условностями, в том числе выводом значения выражения в переменную. Тот же Tcl умел писать в переменную на заре MS-DOS. Что сейчас не так?

DJ Mogarych 26-01-2025 19:35 3035448

Я раньше пытался убеждать кого-то, а потом перестал. Нравится людям - на здоровье.
А curl.exe порой бывает удобнее, чем iwr.

YuS_2 26-01-2025 19:40 3035450

Цитата:

Цитата DJ Mogarych
Я раньше пытался убеждать кого-то, а потом перестал. »

Это правильно. Зачем стучать в закрытую дверь... захотят - сами спросят.

Mancoffee 27-01-2025 09:46 3035472

Цитата:

Цитата DJ Mogarych
Я раньше пытался убеждать кого-то, а потом перестал. Нравится людям - на здоровье. »

Цитата:

Цитата YuS_2
Это правильно. Зачем стучать в закрытую дверь... захотят - сами спросят. »

У меня вечно с ним проблемы, что встроенным, что новым с гитхаб, то cmdlet не найден, то ещё что-то. Поэтому bat - чётко, стабильно, везде. Бонусом - можно намного больше нагуглить для него нужных сценариев, только свои данные поменяй.

SQLai Lama 27-01-2025 13:35 3035477

Цитата:

Цитата DJ Mogarych
А curl.exe порой бывает удобнее, чем iwr.

Скорее функциональнее. Его можно использовать даже как сканер портов, когда по каким-то причинам нет nmap.
Цитата:

Цитата DJ Mogarych
Я раньше пытался убеждать кого-то, а потом перестал. Нравится людям - на здоровье.

Зачем? Будь то яп или ось, это всего-навсего инструменты достижения цели и здесь их эффективность оценивает каждый сам. Набьют себе оскомину раз-другой, задумаются а правильный ли был сделан выбор.
Цитата:

Цитата Mancoffee
У меня вечно с ним проблемы

Может просто отсутствие мотивации сесть и основательно разобраться?

Uragan66 27-01-2025 14:17 3035481

Цитата:

Цитата Mancoffee
Бонусом - можно намного больше нагуглить для него нужных сценарие »

Сейчас ИИ для powershell, и не только, "пишет" любые скрипты. Главное правильную установку ему дать, ну и потом под себя подогнать конечно.
И Гуголь не нужен...

Mancoffee 27-01-2025 16:34 3035494

Цитата:

Цитата SQLai Lama
Может просто отсутствие мотивации сесть и основательно разобраться? »

Ну смотри, я, как и многие другие юзали bat, информации по нему намного больше. И когда пытаешься разобраться, то если ты всё правильно сделал, то всё из гуд.
Лет так десять назад, встретил PS, тоже стало интересно, попробовал какой-то простейший пример, а шиш тебе, какие-то ошибки, начинаешь разбираться, гугл подсказывает, что вот так и так нужно сделать, чтобы исправить, исправил, пробую, опять хрен там. Потом пробуешь ещё чего-то найти, опять пробуешь, опять чёт исправляешь, реестры, шмеестры и опять те же яйца. Как думаешь, какая первая мысль? Правильно, да ну его на ... этот PS.
Проходит несколько лет, попался нужный скрипт и он только для PS. Гуглишь. О! Новая версия на гитхабе. Ну думаю, сто процентов пофиксили уже всё что нужно. Пробуешь, той ошибки нет, но есть другая, третья пятая десятая. И ты понимаешь, а на фиг мне тратить месяцы на изучение PS, если есть намного проще, дефолтнее и т.д., и т.п.? Если бы я этим зарабатывал или по работе нужно было, другой вопрос. А для домашнего так сказать юзера, если изначально на простейшем, в дефолте вылетают ошибки, то уверен, что это не стоит потраченного времени.

ПС. Вот когда-то заинтересовал AutoIt, всё, что делал там, всё чётко работает без нареканий, если и возникают ошибки, то когда исправляешь, всё так же чётко работает. И никакого геммора.
M$ любую мотивацию может превратить в депрессию :)

DJ Mogarych 27-01-2025 18:12 3035499

Mancoffee, лучше с книжек начинать. Дело не в Микрософте, а в том, что учиться на случайных кривых примерах в интернете неэффективно.

Я по этому осваивал:
1. https://learn.microsoft.com/ru-ru/sh...ft-powershell/
2. Learn Windows Powershell in a month of lunches (3rd edition)
3. PowerShell in Depth

Правда, это всё на английском, но это не художественная литература и язык там довольно простой.

YuS_2 27-01-2025 19:13 3035503

Mancoffee, Ваш рассказ звучит примерно так:
"я всегда копал весь свой огород в 1 Га лопатой и всё всегда было чики-пики, вскопал, прошелся граблями и пошел отдыхать, а тут попался мотокультиватор - овно полное... то в землю закопается, то завести - целая проблема, то бензу надо, то масло, то ещё какая-нибудь напасть... не, что ни говори, лопата - вещь самая распространенная и супернадежная! "
Только не обижайтесь, как-то примерно так выглядит Ваше эссе сравнения. :)

Mancoffee 27-01-2025 19:34 3035504

Цитата:

Цитата DJ Mogarych
Дело не в Микрософте, а в том, что учиться на случайных кривых примерах в интернете неэффективно. »

Не, не так. Я начал учить AutoIt по русскоязычной документации и у меня никогда не возникало проблем (кроме тех, когда был невнимателен). А здесь, как я говорил - С НУЛЯ пробуешь сам написать простейший пример и он вываливается во всякие ошибки. Я ж не спорю, что если прочитать тонну информации, то можно сказать "А, я сам дурак".
Я как не любил его за эти всякие ошибки, так и до сих пор эта не любовь продолжается. И дело не в примерах (это я образно), а наверное в том, что всякие M$ безопасности по дефолту обрезают возможности и чтобы их включить нужно много читать. И тут дело не в лени или мотивации, а во времени, которого уже нет столько, чтобы это того стоило.

Цитата:

Цитата YuS_2
попался мотокультиватор »

Ну можно денэг дать фермеру, он приедет и за 15 мин тебе 5Га земли вскопает.
Короче демагогией не буду заниматься, скажу коротко - в дефолте bat ВСЕГДА И ВЕЗДЕ, PS - в дефолте НЕ всегда и НЕ везде. За счёт этой непредсказуемости я его и не люблю и любить не буду.
И в твоё сравнение ещё добавлю - когда я например обращаюсь на форум по ошибке PS, то мне ещё не разу никто не помог до состояния работоспособности. Это говорит, как по мне, лишь об одном - потому что решений может быть тысяча и одна или никто не знает 100%-го решения, почему она возникает. Поэтому сравнение такое себе.

YuS_2 27-01-2025 19:34 3035505

Цитата:

Цитата DJ Mogarych
Правда, это всё на английском »

Начать можно с книжки А.Попова Введение в Windows Powershell, подустаревшее уже издание, но начать - вполне нормально.

Цитата:

Цитата Mancoffee
Ну можно денэг дать фермеру, он приедет и за 15 тебе 5Га земли вскопает. »

Это самый простой вариант... но действенный. Но это же надо денег давать :)

Цитата:

Цитата Mancoffee
когда я например обращаюсь на форум по ошибке PS, то мне ещё не разу никто не помог до состояния работоспособности. Это говорит, как по мне, лишь об одном - потому что решений может быть тысяча и одна или никто не знает 100%-го решения, почему она возникает. »

Если задача описана подробно и точно, то решение будет найдено... а если приходите с вопросом: "всё пропало, оно почему-то не работает", то и искать причины мало кто будет.

Mancoffee 27-01-2025 22:04 3035512

Цитата:

Цитата YuS_2
Это самый простой вариант... но действенный. Но это же надо денег давать »

Ну я подсказку дал, что можно много чего, стать миллионером например и за тебя всё будут делать для тебя. Даже научат тебя любому делу супермега курсами, при которых ты и напрягаться не будешь и потратишь грубо говоря месяц, а другие на эти же знания потратят годы. А что мне это принесёт, если я изучу книгу? Денег не принесёт. А это самый важный аспект жизни.
Цитата:

Цитата YuS_2
Если задача описана подробно и точно, то решение будет найдено... »

Не, не так. Я изначально в интернете (в своей стране, то бишь примерно с 2004 года) и не был эмоциональным, понимал, что нужно просто почитать. И тогда на это уходило минимум времени, а результат был. Тогда я даже везде, где регистрировался, читал соглашения, правила и т.д. Поэтому никогда на форумах у меня такого не было "Всё пропало". А то, что написал, это в буквальном смысле, я делаю пост, в котором максимально описываю проблему, что вот ввожу такую-то команду, по такой-то инструкции, получаю ошибку такую-то. Всё, после этого точка. Молчание ...
Короч ладно, такое, можно долго эту тему развивать, а смысла большого нет.

YuS_2 28-01-2025 11:14 3035516

Цитата:

Цитата Mancoffee
А что мне это принесёт, если я изучу книгу? Денег не принесёт. А это самый важный аспект жизни. »

Тут каждый сам решает, что и как ему делать:
1. Есть много денег, нет желания заморачиваться - проще нанять специалиста и все вопросы будут решены. Проверить иногда подробности будет сложно, но внешняя сторона вопроса, точно будет решена.
2. Нет денег или их не очень много (лишних), но есть желание научиться - необходимо изучать литературу по предмету изучения, возможно курсы, какие-либо пройти... в общем, заняться самообразованием. Иногда может понадобиться помощь спецов, чтобы задавать им интересующие вопросы (не всегда может помощь оказаться бесплатной, но можно найти тех, кто поможет просто так).
3. Нет денег, нет желания учиться, нет ничего, кроме желания получить решение вопроса - ну, не знаю, многое зависит от настроения, желания и многих других факторов, кто захотел бы помогать в подобных ситуациях. Но тоже, решение вопроса, вполне возможно - хотя чаще всего, будет стремиться к нулю... :idontnow:

Цитата:

Цитата Mancoffee
А то, что написал, это в буквальном смысле, я делаю пост, в котором максимально описываю проблему, что вот ввожу такую-то команду, по такой-то инструкции, получаю ошибку такую-то. Всё, после этого точка. Молчание ... »

Здесь? А можно ссылочку? Только не по общим вопросам, а именно про powershell, т.к. речь о нем сейчас.

Цитата:

Цитата Mancoffee
можно долго эту тему развивать, а смысла большого нет. »

Если Вы так свои вопросы воспринимаете - то как к ним будут окружающие относиться? Конечно, ответ будет сложно получить.

Mancoffee 28-01-2025 13:21 3035521

1.и 2. Ну так в вот. Всё дело во времени и потребности.
3. Желание есть, но вот скажи, какой мне смысл тратить годы на изучение, чтобы что? Написать пару тех скриптов, которые нужны были? Дичь. Верно?

Если даже понимаешь перспективу, что это в дальнейшем поможет чему-то там, что не влияет на твою жизнь по сути. Маразм. Понятно, что с учётом того, что уже не тот возраст, в котором можно потратить много времени на интерес.

Цитата:

Цитата YuS_2
Здесь? А можно ссылочку? Только не по общим вопросам, а именно про powershell, т.к. речь о нем сейчас. »

Та давно было, лень искать. Но если слишком принципиально и будет появится желание найду.

Вот на вскидку в истории команд
Код:

PS C:\Users\User> Get-WmiObject -Class Win32_Service -Filter "Name='TotalCMD'"
Get-WmiObject: The term 'Get-WmiObject' is not recognized as a name of a cmdlet, function, script file, or executable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.

Suggestion [4,General]: The most similar commands are:

И это команда, которую взял у человека, у которого она же работает.
И вот это вот cmdlet самая такая, которая встречается в ~80% случаев. И решения слишком разные, слишком невнятные и поэтому ...
Цитата:

Цитата YuS_2
Если Вы так свои вопросы воспринимаете »

Это относится к философии/и т.д., а не к решению задачи.

YuS_2 28-01-2025 21:00 3035548

Цитата:

Цитата Mancoffee
Желание есть, но вот скажи, какой мне смысл тратить годы на изучение, чтобы что? »

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

Цитата:

Цитата Mancoffee
Понятно, что с учётом того, что уже не тот возраст »

ЛюбвиЗнаниям и учебе (век живи - век учись) все возрасты покорны... :grin:

Цитата:

Цитата Mancoffee
И это команда, которую взял у человека, у которого она же работает.
И вот это вот cmdlet самая такая, которая встречается в ~80% случаев. И решения слишком разные, слишком невнятные и поэтому ... »

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

Цитата:

Цитата Mancoffee
Это относится к философии/и т.д., а не к решению задачи. »

Тем не менее... если оно не надо Вам, то зачем оно мне, дяде Васе, Феде или кому бы то ни было ещё? :teeth:

Mancoffee 28-01-2025 23:08 3035555

Цитата:

Цитата YuS_2
Знаниям и учебе (век живи - век учись) все возрасты покорны... »

Я о времени, а не о возрасте.
Цитата:

Цитата YuS_2
Get-WmiObject »

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

Цитата YuS_2
Чтобы не напрягая никого и ни у кого ничего не прося, всё, что нужно сделать - забацать самостоятельно »

Цитата:

Цитата YuS_2
Тем не менее... если оно не надо Вам, то зачем оно мне, дяде Васе, Феде или кому бы то ни было ещё? »

Всегда, без исключений. если мне попадается ситуация, в которой я могу и знаю, как помочь, я это делаю, при чём в максимальных подробностях.
Поэтому всегда обращаясь на форумы я предполагаю, что есть такие же люди, но с другим уровнем знаний или просто со знаниями других языков и т.д.
Если не ошибаюсь, то форумы для того и существуют, чтобы помогать, а не обучать (точнее это тоже, но когда человек сам этого хочет).

YuS_2 29-01-2025 02:09 3035562

Цитата:

Цитата Mancoffee
Так я на это всё время намекал, что это же нужно следить, что где и когда, плюс синтаксис меняется, нужно перечитывать, переучивать. »

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

Цитата:

Цитата Mancoffee
И какой смысл для простого юзера мне в такие дебри лезть, когда учил "с детства" bat, который ближе, более знакомый »

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

Цитата:

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

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

Цитата:

Цитата Mancoffee
Если не ошибаюсь, то форумы для того и существуют, чтобы помогать »

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

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

Mancoffee 31-01-2025 21:17 3035707

Цитата:

Цитата YuS_2
Форумы - не для "бесплатной скорой помощи" существуют »

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

Цитата YuS_2
Если для решения Вашего вопроса, Вы пытаетесь сэкономить свое время, не желая "тратить его впустую на изучение инструмента", то почему Вы ждете, что другие люди, будут тратить уже свое время, на решение Вашего вопроса? »

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

Цитата YuS_2
Только вот, если говорить о времени, про которое Вы постоянно толкуете, в большинстве случаев - лучше не сравнивать. Не в пользу лопаты оно будет... »

Если у человека есть поломанный трактор, но он никогда на нём не ездил и с ним не работал (достался в наследство), и он попросит помощи, то по твоей логике ты ему дашь книгу по его модели и скажешь "Учись!"? Или если ты знаешь, то подскажешь ему в чём может быть причина или как его настроить? За деньги или безоплатно?
Цитата:

Цитата YuS_2
я ни в чем не хочу Вас убеждать или переубеждать - найдете себе помощь - хорошо, не найдёте - придется научиться или забить на проблему »

Та я ж тоже не переубеждаю. Та и если бы делал это, то какой смысл? Человека может переубедить три вещи - собственный опыт, факт и негативные факторы жизни.
Из 100% примерно 80-90 мне помогают бесплатно. Понятно, что помогают только потому (наверное), что я не прошу сделать мне супермега проект. Та и если такое нужно было, то уже понятно, что сам бы учился. А так например человек помог, я посмотрел на скрипт и хоть что-то, но понял. Так учиться можно, когда ты не собрался зарабатывать на этом или грызть многотомники по программированию.
Цитата:

Цитата YuS_2
достаточно научиться базовым вещам »

Так база есть. То бишь образное понимание. Но мы же о другом.

YuS_2 01-02-2025 13:15 3035719

Цитата:

Цитата Mancoffee
В том числе. Иначе получается, что любой обратившийся автоматом становится "насильно" обучаемым. Или сделать форум полностью платным. То бишь помощь за деньги. »

Не, это всё крайности... не о том речь.
Просто пример, именно данный топик. Вот, это, например:
Цитата:

Цитата Mancoffee
мне было достаточно указать конец называния релиза, например x86-64.tar|zip|и т.д., а теперь мне нужно указать начало, в данном случае SiriKaliQt6 (потому что там есть и SiriKaliQt5) и конец setup.exe|zip. То есть мне нужно посредине вставить tag_name или name из вывода curl, который выдаёт из api github.
Как это сделать попроще? »

- говорит о том, что Вам приходилось разбираться в скриптах, как минимум. И если не получается сходу решить проблему - путь на форум и тут, конечно, скорее всего помогут. Ну, если не сильно трудозатратно... это да.
Но если приходит чел, говорит: "у меня проблема, её хочется решить, но ни времени, ни желания разбираться в способах решения нет - помогите". В этом случае, помощь не всегда, а скорее всего, очень редко осуществится.
Но другое непонятно:
1. Если говорят, что есть способ, делать всё проще и понятнее для вопрошающего, надо только разобраться в инструменте - а он в ответ: не, это нафик не надо, я лучше по-старинке, тем что умею и не хочу делать лучше и разбираться в новинках. Ну, как-то, мягко говоря, консервативно это.
2. Хорошо, если проблема не очень большая и возможностей cmd хватает - а если нет?

Цитата:

Цитата Mancoffee
руг меня просит настроить ПК, я прихожу и говорю, не дружище, или ты учишься, или платишь баблишко. »

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

Цитата:

Цитата Mancoffee
Если у человека есть поломанный трактор, но он никогда на нём не ездил и с ним не работал (достался в наследство), и он попросит помощи, то по твоей логике ты ему дашь книгу по его модели и скажешь "Учись!"? Или если ты знаешь, то подскажешь ему в чём может быть причина или как его настроить? За деньги или безоплатно? »

И опять мимо... я говорю, о другом.
У человека есть рабочий трактор, но водить он его не умеет и он приходит с просьбой: " а помоги-ка мне поле вспахать", у меня нет времени и желания учиться водить этот трактор, никогда не испытывал желания. Получит он помощь? :)
Или по-другому, если уж трактор поломанный:
Помоги починить, но у меня нет ни инструмента, ни запчастей... но есть вот кувалда и ножовка, помоги, пожалуйста. Помогут? Ну, может попытаются... добить его до состояния хлама, только если. :)
Цитата:

Цитата Mancoffee
Так база есть. То бишь образное понимание. Но мы же о другом. »

Почему о другом? Если база есть, то проблем с пользованием будет минимум. Затраты времени - мизерные. Почему бы не научиться? У страха, как обычно, глаза велики. Достаточно начать, но не методом тыка, а читая справку, которая у powershell встроенная имеется, а если недостаточно, то есть целые сайты от микрософта, пользуйся - не хочу, как говорится. Это в самом начале, когда информации не было в доступе, могли возникнуть проблемки, но сейчас-то чего?

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

Mancoffee 03-02-2025 13:45 3035761

Цитата:

Цитата YuS_2
Если говорят, что есть способ, делать всё проще и понятнее для вопрошающего, надо только разобраться в инструменте »

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

Цитата:

Цитата YuS_2
Хорошо, если проблема не очень большая и возможностей cmd хватает - а если нет? »

Это в эту же поправку.
Цитата:

Цитата YuS_2
Вы его знать не знаете и видели-то пару раз за всю жизнь? »

Ну я знал, что мы плюс-минус к этому придём, если продолжим. И мы продолжили :)
Не поверишь, но помогаю и с радостью. И тут по ситуации, если человек от "сердца" отрывает копейку, то либо не беру, либо беру минимум из тех купюр, если этот сосед начинает упорно настаивать, чтобы я взял.
И тут дело не в безоплатности, как таковой, а в отношении
Цитата:

Цитата YuS_2
У человека есть рабочий трактор, но водить он его не умеет и он приходит с просьбой: " а помоги-ка мне поле вспахать", у меня нет времени и желания учиться водить этот трактор, никогда не испытывал желания. Получит он помощь? »

Не поверишь :) Получит. У меня сосед такой был (земля ему пухом), как и многие в моей местности.
Цитата:

Цитата YuS_2
Помоги починить, но у меня нет ни инструмента, ни запчастей... но есть вот кувалда и ножовка, помоги, пожалуйста. Помогут? Ну, может попытаются... добить его до состояния хлама »

И снова не поверишь. Помогут, принесут свой инструмент и починят, а вопрошающий при потребности будет онли подсобник.
Цитата:

Цитата YuS_2
У страха, как обычно, глаза велики »

Та не, страх был когда-то, когда ещё php пробовал "кусать" :)
Время, просто время. Если бы это разбирательство в будущем сократило мне время в ~5 раз. Например запрограммировать тот же трактор на обработку своей площади, возможно и да. Ну а так смысл нулевой.
Цитата:

Цитата YuS_2
Это в самом начале, когда информации не было в доступе, могли возникнуть проблемки, но сейчас-то чего? »

Тут приходим к следующей проблеме - ~80-90% официальных справок на инглиш. Да, инглиш учил сам (для того же программирования), но когда столкнулся уже с ним, то оказывается всё, что я учил помогло конечно, но не очень, потому что специфика. А это значит, что нужно ещё и его учить. Те, что с переводом, тот же M$ частенько дичь выдаёт там, где это имеет решающее значение. Понятно, что есть не официальные. но это э неофициальные, не та структура, не то понимание, как следствие не та структура, логика и т.д.

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

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

Цитата:

Цитата Uragan66
Сейчас ИИ для powershell, и не только, "пишет" любые скрипты. Главное правильную установку ему дать, ну и потом под себя подогнать конечно. »

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

Опиум 09-02-2025 23:24 3035896

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

Опиум 10-02-2025 11:12 3035903

Цитата:

Цитата Mancoffee
из вывода curl »

кстати, коллеги....а встроенная в w10 утилита насколько отличается от текущей официальной портированной?

DJ Mogarych 10-02-2025 13:46 3035911

Встроенный несколько урезан по функциональности. Вот 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


YuS_2 10-02-2025 16:04 3035913

Цитата:

Цитата Опиум
насколько отличается от текущей официальной портированной? »

Цитата:

В сборке Microsoft curl отсутствуют несколько полезных функций:

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

Uragan66 15-02-2025 12:42 3036007

Цитата:

Цитата 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 и загружать файлы, соответствующие заданным критериям.


Время: 00:31.

Время: 00:31.
© OSzone.net 2001-