The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Релиз командного интерпретатора Bash 5.0"
Отправлено opennews, 08-Янв-19 11:27 
После двух с половиной лет разработки опубликована (http://lists.gnu.org/archive/html/bug-bash/2019-01/msg00063....) новая версия командного интерпретатора GNU Bash 5.0 (http://www.gnu.org/software/bash/), используемого по умолчанию в большинстве  дистрибутивов Linux. Одновременно состоялся (http://lists.gnu.org/archive/html/bug-bash/2019-01/msg00064....) релиз библиотеки readline 8.0, применяемой в bash для организации редактирования  командной строки.


Значительное изменение номера версии Bash связано с внесением изменений, нарушающих обратную совместимость. В новой версии переработан код, связанный с обработкой ссылочных переменных nameref, что привело к отдельным изменениям поведения при использовании nameref (например, цикл разбора имён nameref внутри функций теперь приводит к определению переменных не в локальном, а в глобальном контексте). Кроме того, по умолчанию переменные BASH_ARGC и BASH_ARGV теперь выставляются только при включении расширенного отладочного режима, что позволило избавиться от проблем с производительностью при передаче скриптами большого числа аргументов. Для работы нового выпуска необходимо наличие свежей библиотеки readline, т.е. для установке Bash 5.0 в дистрибутивах с выпусками readline до 8.0 потребуется переустановка readline или встраивание новой версии библиотеки при сборке Bash.


Из улучшений (http://git.savannah.gnu.org/cgit/bash.git/tree/NEWS?h=bash-5.0) можно отметить:


-  Предложены новые переменные окружения: BASH_ARGV0 (принимает значение $0), EPOCHSECONDS (эпохальное время в секундах) и EPOCHREALTIME (эпохальное время с точностью до микросекунд);
-  Во встроенную команду "history" добавлена поддержка выборочного удаления  записей из БД с историей операций ("history -d start-end") и возможность указания отрицательных значений  в качестве смещения первой  удаляемой записи относительно конца списка (например, "-1" указывает на предыдущую команду);
-  Добавлена опция "localvar_inherit", при установке которой локальные переменные наследуют значение переменный с теми же именами, определёнными  в вышестоящей области видимости;
-  Добавлена опция "assoc_expand_once", при установке которой оболочка осуществляет раскрытие индексов ассоциативных массивов только один раз;-  Включена по умолчанию опция "globasciiranges", допускающая использование масок для определения диапазонов символов ([a-z]);
-  Добавлены встроенные реализации команд rm, stat, seq и fdflags;
-  Во встроенной команде "wait" обеспечена возможность ожидания замещения последнего процесса и добавлена опция "-f" для ожидания завершения процесса или работы вместо ожидания изменения состояния;
-  Добавлена возможность жёсткого определения в файле
config-top.h значений $PATH и  $HISTSIZE.  Данные значения будут более приоритетными, чем значения из переменных окружения и могут применяться для создания ограниченных окружений;
-  При автодополнении ввода теперь не учитывает регистр символов для имён функций и псевдонимов (alias), если в readline  выставлен режим  completion-ignore-case;-  Во встроенной команде "umask" разрешено использование режимов доступа и масок, превышающих восьмеричное значение 777;
-  Во встроенной команде "times" в зависимости от настройки локали теперь может выводиться не только точка, но и запятая в качестве разделителя дробных значений;
-  Добавлена отключенная по умолчанию и недокументированная опция для включения отправки истории команд в syslog;
-  Встроенная реализация malloc переведена на использование mmap для обеспечения запроса блоков, размером больше 128 Кб, и возможности возврата страниц памяти ядру после выполнения mfree;-  В качестве индексов ассоциативных массивов теперь могут использоваться строки, состоящие только из символов пробела;-  В разряд видимых переведены ранее недокументированные опции localvar_unset и progcomp_alias;
-  Переменная "$_" теперь не меняет своё значение, когда shell запускает команду, выполняющую fork.

URL: http://lists.gnu.org/archive/html/bug-bash/2019-01/msg00063....
Новость: https://www.opennet.ru/opennews/art.shtml?num=49917

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру