Релиз командной оболочки Bash 5.1. Linux новости

Релиз командной оболочки Bash 5.1

20
Лайков: +11
войдите, чтобы ставить лайки

Bash 5.1

Bash 5.1
Версия:5.1
Дата релиза:7 декабря 2020
Предыдущий релиз:5.0 от 7 января 2019 (пресс-релиз)

Состоялся релиз командной оболочки Bash 5.1. Предыдущий релиз 5.0 выходил два года назад.

Bash 5.1.0
Bash 5.1.0
 

Что нового

Список изменений довольно большой. Было исправлено несколько существенных ошибок прошлой версии, и добавлены новые возможности. Отметим некоторые изменения.

Одно из заметных изменений заключается в новом поведении при извлечении имен файлов (pathname expansion). Фактически, был сделан откат к позапрошлой версии и теперь поведение аналогично Bash 4.4. Теперь имя файла не извлекается на слове, которое содержит обратную косую черту (или несколько) и не содержит специальных символов (используемых в globbing).

Примечательно, что данное изменение несовместимо с прошлой версией Bash 5.0. Причем в 5.0 оно соответствовало стандарту POSIX, но пользователям такое поведение оказалось неудобно.

Для включения режима совместимости с прошлыми версиями Bash теперь нужно использовать переменную BASH_COMPAT. Опция compat50 отсутствует.

Существенно обновлена работа движка случайных чисел. Была введена новая переменная SRANDOM, которая получает случайные данные от энтропийного движка системы, поэтому не является линейной и не может быть перезагружена для получения идентичной случайной последовательности.

Случайное число в Bash через SRANDOM
Случайное число в Bash через SRANDOM

Добавлена новая переменная PROMPT_COMMANDS. Это массив, в который можно сохранить набор команд, которые будут выполнены до вывода приглашения командной строки.

Ассоциативные массивы теперь можно задавать с использованием списка пар «ключ-значение». Если «ключ» пропущен или пустой, то это рассматривается как ошибка. Пустое «значение» рассматривается как NULL.

Добавлены новые операторы (spec) для преобразования параметров/строк — ${parameter@spec}:

  • U — преобразование в верхний регистр.
  • u — преобразование первого символа в верхний регистр.
  • L — преобразование в нижний регистр.
  • K — отображение ассоциативного массива в виде пар ключ-значение.

В Posix режиме теперь доступна функция замещения процесса (process substituon).

Для команды wait добавлена новая опция -p VARNAME, которая сохраняет в переменную VARNAME PID процесса, возвращаемого wait -n или wait.

Команда wait. Новая опция -p
Команда wait. Новая опция -p

Также состоялся релиз библиотеки Readline 8.1, используемой в Bash.
Справка из Википедии: Readline — библиотека GNU Project, которую Bash и другие программы с CLI-интерфейсом используют для взаимодействия с командной строкой.

И другие изменения...

20
  • Опубликовано: 09.12.2020

Комментарии

Алексей
09.12.2020
14:25
Постоянная ссылка на комментарийПостоянная ссылка на комментарий
0
войдите, чтобы ставить лайки
Обычному юзверу это будет не понятно.
VIarr
09.12.2020
14:48
Постоянная ссылка на комментарийПостоянная ссылка на комментарийРодительский комментарийАлексейРодительский комментарий
+1
войдите, чтобы ставить лайки
Когда обычному юзверу понадобится писать скрипты, тогда и разберётся)
aNDy
Активный пользователь
Активный
09.12.2020
14:54
Постоянная ссылка на комментарийПостоянная ссылка на комментарийРодительский комментарийVIarrРодительский комментарий
-10
войдите, чтобы ставить лайки
Обычный юзвер сидит на винде и с трудом представляет что такое "консоль" :)
Nruter
09.12.2020
15:09
Постоянная ссылка на комментарийПостоянная ссылка на комментарийРодительский комментарийaNDyРодительский комментарий
+3
войдите, чтобы ставить лайки
обычный юзвер не лезет в дебри, потому что он или врач, или водитель, или ещё кто-то с обычной специальностью. А вот где вас таких умных делают, расскажите. Не все, у кого установлен линукс, интересуются его кишками.
aNDy
Активный пользователь
Активный
09.12.2020
20:29
Постоянная ссылка на комментарийПостоянная ссылка на комментарийРодительский комментарийNruterРодительский комментарий
+2
войдите, чтобы ставить лайки
Вот только грубить не надо. Да, есть люди, использующие девайс, который в 100000 раз мощнее, чем бортовой комп на Аполлоне, исключительно для просмотров видосиков на ютубчике. Если не пытались объяснить пользователю, что такое double click - Вы жизни не видели :) Хватило ума самому установить Линукс - хватит ума поинтересоваться его потрохами :)
Nruter
10.12.2020
08:01
Постоянная ссылка на комментарийПостоянная ссылка на комментарийРодительский комментарийaNDyРодительский комментарий
+2
войдите, чтобы ставить лайки
<Вот только грубить не надо>
Никто и не грубил. В мире на сегодняшний день всего 23 млн. программистов. Это всего около 0,4% от населения Земли. Из этих 23 млн. с Линуксом связаны всего 30%, т.е. около 8 млн. А Вы на популярном, а не на чисто специализированном сайте надеваете на себя золотую корону сверхспециалиста и позволяете себе насмехаться над теми, для кого компьютер в общем, и Линукс в частности, не является открытой книгой. Зайдите на сайт разработчиков и там упражняйтесь.
Ничего грубого в моём посте нет.
aNDy
Активный пользователь
Активный
10.12.2020
13:43
Постоянная ссылка на комментарийПостоянная ссылка на комментарийРодительский комментарийNruterРодительский комментарий
0
войдите, чтобы ставить лайки
Смайлик в конце комментария видели?

Возможно, не совсем понятно выразился, так, мысли вслух, никого обидеть не хотел. Просто вспомнился случай на stackoverflow, когда одному программисту(!) пришлось объяснять, как в Винде открывать консоль и как ей пользоваться.

А по поводу "где нас таких умных делают" - мы восновном сами такими делаемся. Ещё в школе фортран, пролог, ассемблер и С выучил, абсолютно добровольно, а не как сейчас "потому что зарплаты большие".
NadyBear
Активный пользователь
Активный
10.12.2020
14:09
Постоянная ссылка на комментарийПостоянная ссылка на комментарийРодительский комментарийaNDyРодительский комментарий
+3
войдите, чтобы ставить лайки
Коллеги - не надо поднимать свару на ровном месте. Я, лично знаю человека - 92 года (sic!) - бывший преподаватель в\математики -сам себе установил U20.04 - теперь для себя пишет скрипты в bash - к чему я это - человеку интересно.
aNDy
Активный пользователь
Активный
10.12.2020
14:20
Постоянная ссылка на комментарийПостоянная ссылка на комментарийРодительский комментарийNadyBearРодительский комментарий
0
войдите, чтобы ставить лайки
Разве ж это свара? То мы ещё про политику беседовать не начали :)

Маман >70 лет уже давно работает на Линуксе (да, возраст пенсионный, но посидела на пенсии несколько лет, сказала "скучно" и пошла работать дальше)

У неё коллеги от девушек ~20 до дедушек ~80 восновном на Линуксе сидят. Научный софт восновном на нём.
NadyBear
Активный пользователь
Активный
10.12.2020
14:29
Постоянная ссылка на комментарийПостоянная ссылка на комментарийРодительский комментарийaNDyРодительский комментарий
0
войдите, чтобы ставить лайки
Именно так - все зависит от конкретного человека. Да - тут еще вспомнилось - знакомый врач-нейрохирург также присел на Linux- правда он купил Opensuse с уже установленой софтиной по его профилю - очень доволен.
aNDy
Активный пользователь
Активный
09.12.2020
20:35
Постоянная ссылка на комментарийПостоянная ссылка на комментарийРодительский комментарийNruterРодительский комментарий
+1
войдите, чтобы ставить лайки
А, да. Очень многие обладатели смартфонов нв Android удивились бы, что у них установлен Linux :)
aNDy
Активный пользователь
Активный
09.12.2020
14:32
Постоянная ссылка на комментарийПостоянная ссылка на комментарий
0
войдите, чтобы ставить лайки
bash (что то всё время путаю с bush, наверное, говорит) уже как данность воспринимается, что за релиз без баша. То, что у неё тоже выходят обновления... Как то даже странно :) Чего ожидаю от разрабов: очень медленная работа со строками (пришлось в своё время учить пайтон и перл) А так няшка.
OldRunner
Активный пользователь
Активный
09.12.2020
14:40
Постоянная ссылка на комментарийПостоянная ссылка на комментарийРодительский комментарийaNDyРодительский комментарий
+1
войдите, чтобы ставить лайки
Я перехшел на zsh и, пока что, доволен.
aNDy
Активный пользователь
Активный
09.12.2020
14:50
Постоянная ссылка на комментарийПостоянная ссылка на комментарийРодительский комментарийOldRunnerРодительский комментарий
0
войдите, чтобы ставить лайки
shell'ов много всяких, от sh до fish. Если мне память не изменяет, zsh мне непонравилась из за неиспользование readline. Тяжко без привычных хоткеев.
VIarr
09.12.2020
14:47
Постоянная ссылка на комментарийПостоянная ссылка на комментарий
0
войдите, чтобы ставить лайки
Отличный релиз! Ждём в апдейтах
NadyBear
Активный пользователь
Активный
09.12.2020
15:43
Постоянная ссылка на комментарийПостоянная ссылка на комментарий
+1
войдите, чтобы ставить лайки
3-й день пользую fish - весьма занятная оболочка. Правда, для написания скриптов синтаксис довольно сильно отличается от bash. Ну и в скриптах bash не забывать первую строчку "!#/bin/bash", а то сыпятся ошибки.
kasnew
09.12.2020
21:21
Постоянная ссылка на комментарийПостоянная ссылка на комментарийРодительский комментарийNadyBearРодительский комментарий
+1
войдите, чтобы ставить лайки
Тоже fish использую, но до скриптов пока не дорос) около полугода па постоянной основе
NadyBear
Активный пользователь
Активный
09.12.2020
22:59
Постоянная ссылка на комментарийПостоянная ссылка на комментарийРодительский комментарийkasnewРодительский комментарий
0
войдите, чтобы ставить лайки
Там немного не так - допустим команда alias="чего-там" , то у fish это описываеться как внутрення функция - fn alias - и дальше пошло как скажем в php. Я пока сам не сильно разобрался - мне и самому интересны фички.
aNDy
Активный пользователь
Активный
09.12.2020
23:58
Постоянная ссылка на комментарийПостоянная ссылка на комментарийРодительский комментарийNadyBearРодительский комментарий
0
войдите, чтобы ставить лайки
> не забывать первую строчку "!#/bin/bash"
О да! 5 лет назад мне на stackoverflow объясняли что такое shebang. Всплакнулось даже...
VIarr
10.12.2020
00:03
Постоянная ссылка на комментарийПостоянная ссылка на комментарийРодительский комментарийNadyBearРодительский комментарий
+1
войдите, чтобы ставить лайки
Fish к сожалению не posix-совместимый

Написать комментарий

Ваше имя:
Текст комментария:
  • Уважать других.
  • Не ругаться.
  • Без оскорблений.
  • Без грубости.
  • Не переходить на личности.
  • Писать на русском языке.
  • Без политики.
  • Без флуда.
Правила