После двадцати месяцев разработки опубликована новая версия командного интерпретатора GNU Bash 5.2, используемого по умолчанию в большинстве дистрибутивов Linux. Одновременно сформирован релиз библиотеки readline 8.2, применяемой в bash для организации редактирования командной строки...Подробнее: https://www.opennet.ru/opennews/art.shtml?num=57835
Когда я впервые открыл командную строку в Linux мне вспомнилась Башкирия. Я не знал что такое именно bash. Вот.
в отличие от Башкирии баш закрылся 24 февраля
https://www.gnu.org/software/bash/ открывается без торов и впнов.
bash.im
Чудные дела, втихую сдох таки Максим.
Мда... Баш Орг - шедевр.Навеяло Шварца - https://www.youtube.com/results?search_query=%D0%A...
wiki: 24 февраля 2022 года в день, когда Россия начала вторжение на Украину, сайт стал открываться с чёрным фоном и без содержимого. Спустя три дня появилась надпись «НЕТ ВОЙНЕ». 1 апреля сайт перестал работать. :wiki
How cares?
1 апреля? символичненько-с! :)
> 1 апреля? символичненько-с! :)Надоело.
теперь бездна тут http://www.bashorg.org/pit
А в Башкирии вода... Сорок градусов она...
Когда встречаю упоминание Armbian, вспоминаю Армению.
А /bin/cat - двоичный кот
Кот шрёдингера
usr - ussr
Реально удивился названию этого каталога. Было тогда же, когда и с bash - кстати я увидел иерархию каталогов Linux сначала в Dillo, по моему.
Башкирия - хороший регион. Многим программистам из Башкирии признателен лично.
Жирный баш стал ещё жирнее, ждём новые уязвимости.
Не такой уж и жирный. Если много процессов спамить приходится (а это, считай, любая операция над более чем 1 файлом), то баш внезапно становится очень эффективным и лаконичным, что немаловашно. А массивы вообще топчик (хотя могло быть получше), но конкретно в этой версии добавили unset для элементов массива и это именно то, чего недоставало. Правда, я не видел чтобы массивы использовались где-нибудь, но это наверно вендузятники пишут на баше обычно.
> много процессов спамить"спавнить"?
синонимично "флудить"
Справедливости ради массивы нужны для реализации сложной логики скрипта. А это нужно не только вендузятникам :)
> Справедливости ради массивы нужны для реализации сложной логики скрипта. А это нужно
> не только вендузятникам :)Я имел в виду, что вендузятникам это как раз и не нужно.
Есть, кстати, альтернативы, написанные на Rust. Например: https://github.com/mitnk/cicada. Возможно, когда-нибудь будет дефолтным :).
А альтернативы в виде пайтон оболочек изжили себя?
и зачем мне грузить кучу статик-мусора в память?
Дефолтным будет, когда FSF одобрит. А это если права на код передадут.
Одобрение FSF - самая последняя вещь, которую в мире вообще кто-то ждёт лол
Не смущает что Цицада совсем не совместима с Башем? К тому же примитивнее.
Баш конечно не идеален, но за счет его распространенности и документированности проблем с его использованием нет. То есть проект не решает насущных проблем пользователя юниксоподобных систем.
Башем вообще говоря пользуются именно из-за его расширений POSIX Shell, которые уже де-факто стандарт. Выпиливать то, чем пользуются и подавать это как фичу, взамен улучшая автокомплит... Очень в духе хакерских игрушек, которые пишутся для развлечения ради прикольности фич.
никсы были написаны в духе хакерской игрушки. линуха тоже.а первые маздайки мелкогадких - они по-студиковски, на праскакале :)
>Есть, кстати, альтернативы, написанные на Rust.- Здрасьте!
- Перепиши на расте!
Есть мнение, что командный интерпретатор должен быть минималистичным, а все скрипты должны писаться на языке с нормальными типизацией и синтаксисом.
Сейчас бы писать каждый скрипт для запуска тара на расте, да. Я думаю многие бы хотели тратить на это время. Кстати, по сравнению с тем же питоном, скрипты на сабже могут быстро запускаться и исполняться, и их можно собирать в любой комбинации друг с другом просто покидав команды списком.
Есть ОС (шндовс), построенная в этой идеологии. Только почему-то она проиграла линуксу на серверах и на мобильных устройствах, вчистую.
Здрасьте. У нее все норм, дефолтный шелл со времен восьмерки - power, а не cmd.exe для совместимости с незнамочем.
Местные "луддиты" кстати, героически борются, восстанавливая простой доступ к цоммандцом по умолчанию во всех местах (их можно понять, все же ps загружается очень и очень небыстро)Забавно, что она начала "проигрывать линoopsу" именно после этого.
(Совпадение, разумеется совпадение.)
фу-фу-фу, паверже - шелл для инопланетян, неужно сложно было мелкогадким просто посикс совместиться и принять какой-нибудь корн или баш?
а маздайка никогда и не выигрывала, как не напрягались мелкогадкие :)
Наоборот - слишком просто. К сожалению, за тридцать лет передавать в пайп строки стало уже немного неэффективно и неудобно, поскольку сущности несколько усложнились. MS имела возможность сразу сделать правильно, и сделала, между прочим - а не "json в xml", как у смузилинуксеров.Доступ к шибко глубоко вложенным элементам немного ушлепский, но обычно дальше второго уровня и не надо.
Вы это про REXX?
Это глубоко ошибочное мнение.
Сейчас в большинство сквир^W скриптовых языков завезли опциональную типизацию. Тайпскрипт(прастихоспади) и питон задали тренд - что уже даже до пхп оно докатилось в каком-то виде. Так что тот же питон видится отличной заменой для небольших поделок, которые нечасто запускаются - как в плане работы с типами так и читаемости. Да и распространен он очень хорошо. Нет разницы запуститься у тебя скрипт за 0.001 секунды или 0.1. Для повсеместного софта типа cvs есесна надо пилить бинари и экономить суммарно очень много тактов процессора в масштабах человечества.
Ваша типизация никому никогда ни в чём не помогала. Это просто ложные ощущения от успешных попыток понять чужой код. Попробуйте как-нибудь набрать unsigned unsigned volatile const unsigned unsigned register int zero = 0 в сишке, и убедитесь что лучше вам от этого заклинания нигде не стало. Кармак помню рассказывал как ему const понравилось везде где не надо дописывать, но это не более чем религия.
Вот про register не надо наговаривать, очень помогает тупому компилятору. Как и volatile. А const например позволяет размещать данные в неизменяемой секции, почему нет? Ну и потом, при чём тут языки со слабой типизацией, в той же сишечке типов по сути и нет.
Да я же не спорю что оно иногда надо, но я против огульной типизации всего без разбору. Понятные имена давать - очень помогает, а везде где подходит const, volatile, register, inline прописывать - ОКР. Ещё как пример: типизировать лямбду сравнения в сортировке - бред, она со всем работать может. Культ типизации во всяких c++, rust прекрасно виден. Короче по теме, не нужна типизация в скриптах, которые пишут люди.
Так речь шла про нормальную типизацию.Описывать руками тип каждой переменной, кстати, не обязательно.
Звучит разумно, кстати!
Каждый занимается своим делом. Прям Linux-way
Чтобы использовать баш, или повершелл, пора ходить на курсы программирования. Не то что этот ретрофажный cmd, который до сих пор справляется с простыми задачами
а что дадут курсы программирования? программирования они точно не дают
и это не тот случай, в котором "не попробуешь, не узнаешь". это не гомосексуализм
в гомосексуализме действительно: один раз заценишь, и больше никогда не откажешься
Подтверждаю.
Они дадут работу тем, кто не умеет программировать, но изучал в школе питон.
cmd пусть был и прост, но функционала там ощутимо не хватало, хотя и нередко выручал
доработали бы - того глядишь и повершелл не появился бы
Из-за недостатка функционала однажды не смог написать батник, поставил Bash for Win, добавил нужные dll-ки с сайта GNU, написал нужный скриптец и жизнь заиграла другими красками :)
Для особых ценителей есть tcc/le который является заменой cmd с расширенной поддержкой команд
Серьезные проблемы с интеллектом, если без курсов не можешь пользоваться башем. В общем-то пользуйся вендой дальше, вообще все равно, что ты думаешь про юниксовые штуки.
> Чтобы использовать баш, или повершелл, пора ходить на курсы программирования.Ну дык высокий уровень входа - это хорошо.
Fzf бы в него встроить. Только с Го на что-нибудь нормальное переписать.
skim же
https://github.com/lotabout/skim
Растовики как всегда забыли проверить конфликт имён? skim -- это KDE'шный интерфейс для SCIM.
> Fzf бы в него встроить. Только с Го на что-нибудь нормальное переписать.А чем Го не угодил то?
А дикарям всё время что-то магическое мерещится. То название языка не такое, то аура не та.
>А чем Го не угодил то?Отсутствием vendor-neutral реализации, прибитостью к go get, потребностью перебирать мир из-за проблем в единственной зависимости (привет, статическая линковка), и потребностью держать исходники всех возможных зависимостей всех возможных версий в кэше.
>>А чем Го не угодил то?
> vendor-neutral реализацииА вы знаете какой-то язык, за которым не стояла бы какая-то организация (где людам платят за РАБОТУ) и при этом язык достиг успехов и популярности? Кстати вы в курсе что лицуха у Го БСД-шная, позволяющая делать с языком все что нравится и при этом гляньте на коммитеров, там и от других компаний помимо гугли вливают
> прибитостью к go get
Гон! На нем можно вполне написать программу, на машине, которая никогда не видела интернета... ну если конечо писатель такой умный и никогда не пользуется библиотеками, а всё пишет с нуля, к тому же go get это уже давно как из прошлого
> потребностью перебирать мир из-за проблем в единственной зависимости
Чиво, чиво? Ну назовите эту зависимость, тем более единственную... не забудьте почитать про ldd и проверить ей зависимости в скомилированных на Го программах с CGO=0 и ключиками -s -w
> (привет, статическая линковка) У вас батенька с теорией не все в порядке, вот именно что статическая линковка позволяет не перекомпилировать написанные на Го программы и в пределах всей платформы программы будут работать от 1-й версии ОС-и и до последней без перекомпилирования, а вот с shared либами именно и есть гемор, где надо пересобирать все каждый раз после очередной обновы ОС-и...
> и потребностью держать исходники всех возможных зависимостей всех возможных версий в кэше.Ну нравится каждый раз загружать зависимости из сети :) то флаг в руки: go clean -modcache
>Отсутствием vendor-neutral реализацииЕсть такая реализация - gccgo
О, класс! Баш - вещь! Лучший командный процессор, а по сути - полноценный язык программирования.
Брейнфак тоже полноценный (полный по тьюрингу)
По правде, именно что неполноценный. Для сравнения возьмите перл, в нем интегрированы все "шелловые" штучки, но при этом язык действительно полноценный. Будет многократно легче писать логику, сравнения и проверки, полноценное I/O и сеть (в баше с этим полный мрак, если копнуть чуть глубже), даже без модулей.
Ну Perl Ларри и начал писать, когда исчерпал возможности shell, sed, awk и т.д., так что это нечто большее, чем полноценный язык - на перле "можно всё". Но и на баше много чего написать можно.
На баше (точнее, его диалекте - spec файлы rpm) разработана автономная операционная система, при упоминании которой набигают фанатичный Анонимы. В смысле, её разработчики в этом уверены.
Все испытываю поползновения перелезть с него на zsh. Но потом представляю, что, если привыкну, то как же я на старых серверах-то корячиться буду? И не перелезаю.И - все хорошо.
Класс! Надеюсь, ещё многомерных массивов дождёмся, возврата нескольких значений из функций, лямбды, лексическое связывание.
3 версии назад как пора, а вы все тянете.
>Класс! Надеюсь, ещёВот-вот, и классов когда-либо тоже дождёмся. Тогда Паршел точно ненужен.
Перл уже есть
Я очень страдаю из за отсуствия man ов на русском языке. А для некоторых команд манов вообще нет.
Выучи английский
> Я очень страдаю из за отсуствия man ов на русском языке. А для некоторых команд манов вообще нет.Язык инженеров и учёных - английский. Скрипт, хорошо запутанный на шелле, куда тяжелее ан.яз-а.
Чувак хочет использовать Линукс у себя на десктопе, ты его заставляешь стать либо инженером, либо учёным. Он почешет репу, скажет да пошёл этот линукс. И будет всем говорить что линукс для zадротов.
ls -al /tmp или cat file.txt не сверхзапутанные команды. Но позволяют понять всю мощь, консоли, против кноподрыганья по иконкам и лазанья в проводниках файлов. Освоив перенаправление, glob подстановки и параллельное выполнение команд в оболочке, он уже будет чувствовать себя богом за консолью. Писать запутанные скрипты запуска операционной системы, или управления демонами ему может вообще никогда не понадобится.
Проблема многих линуксоидов, задранное ЧСВ. Линукс стал уже давно ЮЗАБЕЛЬНЫМ, но вот комьюнити, у этой операционки(и справочная система) до сих пор отстой.
Иди Windows OS там коммюнити не отстой. А вместо стройной справочной системы есть Гугл.
Справочная системы в Юникс (в Линукс в том числе) - лучшая! Читай маны, и все будет понятно. Если не хватает манов, ищи в интернете!
Команда trans переводчик в консоли, поможет. Может и русский переводить на указанный в опциях.
Маны есть для всех в системе установленых команд. Во всяком случае так должно быть, потому что при установке людой программы, автоматом устанавливается страница мануала на нее. Есть книги на русском от Пола Коббаута: http://rus-linux.net/MyLDP/BOOKS/Linux_Foundations/toc.html&...Там есть по-русски описание программ