Ну чего там с языками программирования и технологиями?

Discussion in 'Off Topic' started by -rust-, Sep 2, 2022.

  1. Sea

    Sea Well-Known Member

    Joined:
    Feb 9, 2001
    Messages:
    27,652
    Location:
    Ukraine, Kiev
    Потом написать функцию для файла в gzip'е, для потока из сокета, для http и для https не забыть! Вспомнил, приходилось хмл из фтп читать - тоже нужна отдельная функция!
     
  2. mcgru-

    mcgru- Well-Known Member

    Joined:
    Sep 21, 2000
    Messages:
    61,454
    Location:
    Tomsk, Russia
    а grep умеет шифрованное фильтровать??? (это я про https)
    не, что касается всех опций к grep - то можно параметром(-ами) передавать, не проблема - и тогда и .gz-файлики тоже можно будет грепать, и сокет в виде io.Reader [golang] использовать - не проблема.
    в Rust наверное ещё проще с этим - организовать grep(...).option1().option2() и т. д.
     
  3. Sea

    Sea Well-Known Member

    Joined:
    Feb 9, 2001
    Messages:
    27,652
    Location:
    Ukraine, Kiev
    Ты же можешь в одну строчку написать "curl https://... | grep"? Ну вот кому-то такое понадобится и он тоже захочет его в базовом наборе.
     
  4. mcgru-

    mcgru- Well-Known Member

    Joined:
    Sep 21, 2000
    Messages:
    61,454
    Location:
    Tomsk, Russia
    ну тогда у тебя пример не совсем корректный про grep.
    grep сам по себе предназначен для фильтрации строк, а уж что ему подают на вход или какой файл передают - не важно.
    так что или как ты написал, или grep blabla <(curl https://...) - этого за глаза. это удовлетворяет всё из "кому-то может понадобиться", добавляя лишь один/несколько символов.

    я же сетую за то, как если бы была нужда в новой опции: grep blabla -o https site
    -- вот если б такое использовалось бы повсеместно (тысячами админов), а никто не делал бы "искаропки".
     
  5. Sea

    Sea Well-Known Member

    Joined:
    Feb 9, 2001
    Messages:
    27,652
    Location:
    Ukraine, Kiev
    Ну так чем тебя не устраивают "четыре строчки"
    1. открыли файл, поток, сайт, что угодно что умеет отдавать текст
    2. погрепали как нам нравиться
    3. закрыли открытое в пункте 1
    4. вернули результат

    Не сложно соединить два нужных кирпичика и получить результат. Вместо создания универсального кирпича на все случаи жизни.
     
  6. mcgru-

    mcgru- Well-Known Member

    Joined:
    Sep 21, 2000
    Messages:
    61,454
    Location:
    Tomsk, Russia
    там не четыре строчки получится, в том-то и дело.
    если б обходилось всё 3-4 строчками - разве ж я разводил бы здесь канитель? :)
     
  7. Sea

    Sea Well-Known Member

    Joined:
    Feb 9, 2001
    Messages:
    27,652
    Location:
    Ukraine, Kiev
    Ну если обвесить все обработчиками ошибок, то да больше четырех. Но твоя универсальная функция точно так же потенциально нагенерит кучу возможных ошибок которые так или иначе надо будет обрабатывать в твоем коде.
     
  8. mcgru-

    mcgru- Well-Known Member

    Joined:
    Sep 21, 2000
    Messages:
    61,454
    Location:
    Tomsk, Russia
    внутри функции - пускай обрабатывает ошибки. я даже согласен вытаскивать обработку генеральной ошибки наружу того grep().

    Возможно, я, "разбалованный" работой в bash, требую чего-то супер-великого?
    то-то, порой, "великие погромисты" в осадок выпадают, когда видят моё решение проблемы в одну строку, тогда как в их голове там зреет план на 100.000-строчный исходный код.
    был такой случай - помог одним погромистам наладить шифрованную связь до удалённой базы данных.
    ? Может, люди просто не знают, что древние сисадмины давны-давно выискивали в текстовых логах регексповые подстроки, выводя всё это дело в пайпу и передавая на другую _стандартную_ программу ...
    Вот казалось бы - ну херли тут сложного реализовать?
    str := grep("blabla.*hruhru", "*", "-R -l")
    пустая строка - это тоже "решение" (пустое множество).

    Такое впечатление, что в видео-туториалах великие погромисты показывают "как отредактировать файл", а как от-sed-ить туеву хучу файлов, передав функции всего-лишь список имён файлов - это они, видимо, считают overload'ом для новичков... да и не для новичков тоже...
    типа, "сакральные знания!!!111разрасрас"
    ok := sed("s@blabla@foofoo@", filelist=[ "file1", "file2", "dir/*", и т.д. ], options= ...)

    Это ж, если новичок такое увидит - ему ж совсем ни об чё голову ломать не нужно станет!
     
    Last edited: Nov 10, 2022
  9. Sea

    Sea Well-Known Member

    Joined:
    Feb 9, 2001
    Messages:
    27,652
    Location:
    Ukraine, Kiev
    Ну и лишишь себя возможности обработать разные ошибки на разных этапах. При том, что некоторые ошибки вполне восстановимы, например не открылся файл, но ты то знаешь что у тебя файл на удаленном сервере с ненадежным соединением, делаешь еще одну попытку через интервал и готово.
    Ты в совершенстве освоил bash но при этом хочешь совсем другую сферу подкрутить под свои знания.
    Реализуй, выложи на гитхаб какой-нибудь, посмотри что получится.
    Это разные сферы. Твой sed больше админский, когда подобное нужно программеру то он за короткое время сочинит себе велосипед, что пробежится по списку файлов и сделает внутри каждого файла замену. Незнаю правда, зачем ему это надо.
     
  10. mcgru-

    mcgru- Well-Known Member

    Joined:
    Sep 21, 2000
    Messages:
    61,454
    Location:
    Tomsk, Russia
    сисадминов, переходящих с bash на go - не так много в мире :)
    сотня? две?
    но это не значит, что разрабам языка можно останавливаться на наполнении стдлиба примитивной хренью (кроме того, что они сами хотят из крутого оставить).

    но в целом - я бы даже готов был поучаствовать в группе по созданию такого пакета: golang-for-sysadms.
    мне сейчас не хватает небольших науськиваний по стилю от опытного гошника.
     
    Last edited: Nov 11, 2022
  11. fas---

    fas--- Дремучий патриархал

    Joined:
    Jun 4, 2006
    Messages:
    11,714
    Location:
    Российское Царство
    Я не возьму в толк - Сиа так-таки ресторатор или программер? :)

    зы приятно в топик зайти, чес-слово...
     
  12. Sea

    Sea Well-Known Member

    Joined:
    Feb 9, 2001
    Messages:
    27,652
    Location:
    Ukraine, Kiev
    Программер-админер, рестораном то жена занимается в основном.
     
  13. fas---

    fas--- Дремучий патриархал

    Joined:
    Jun 4, 2006
    Messages:
    11,714
    Location:
    Российское Царство
    Ага, вон оно как... А то я удивился, как так совмещать такие вещи...
     
  14. rgreat

    rgreat FH Developer

    Joined:
    Jul 19, 2000
    Messages:
    42,385
    Location:
    Russia
    Судя по раскладам, Козла в костюме горничной встречать будет сам sea. :D
     
    Last edited: Nov 13, 2022
    Flk and -Shai- like this.
  15. mcgru-

    mcgru- Well-Known Member

    Joined:
    Sep 21, 2000
    Messages:
    61,454
    Location:
    Tomsk, Russia
    вы давайте не засирайте топик :)
     
    fas--- and Sea like this.
  16. Stefan

    Stefan FH Beta Tester

    Joined:
    Feb 14, 2001
    Messages:
    22,274
    Location:
    Пивбар
  17. mcgru-

    mcgru- Well-Known Member

    Joined:
    Sep 21, 2000
    Messages:
    61,454
    Location:
    Tomsk, Russia
    наверное нужно передавать веб-бакенду домен (часть доменного имени), который сидит за веб-фронтендом, который обслуживает какие-попалошные доменные имена krsk19.blabla.ru , чтобы бакенд знал, что это обрабатывается домен krsk19
    видимо, в бакенд не попадает переменная HOST из хттп-запроса
     
  18. rgreat

    rgreat FH Developer

    Joined:
    Jul 19, 2000
    Messages:
    42,385
    Location:
    Russia
    В итоге одно и то же в запросе передается аж 3 раза.

    Нано-технологии. :)
     
  19. sharky

    sharky Well-Known Member

    Joined:
    Feb 9, 2000
    Messages:
    2,664
    Location:
    Prague, Czech Republic (Ex Mosсow, Ex Omsk, Russia
    А может криво заенкодили строку, а потом еще раз передали те же параметры, потому что не нашли.
     
  20. schuss

    schuss Well-Known Member

    Joined:
    May 29, 2001
    Messages:
    3,757
    Location:
    Moscow
    C запозданием, но всё же...
    29 сентября в возрасте 100 лет покинула наш мир создательница языка ассемблера Кэтлин Бут (Kathleen Booth), Кэтлин также была одним из пионеров исследований в области искусственного интеллекта.

    Про её заслуги: https://www.theguardian.com/technology/2022/nov/10/kathleen-booth-obituary