Пятая основная версия Bash была выпущена с улучшениями, включая переработку способа расширения имени пути.
Bash — это Bourne Again SHell проекта GNU, полная реализация спецификации оболочки POSIX. Он также поставляется с интерактивным редактированием командной строки, управлением заданиями на поддерживающих его архитектурах, csh-подобными функциями, такими как подстановка истории и расширение скобок.
Наиболее значительным изменением в новой версии стало то, что пользователи bash жаловались на то, как предыдущий выпуск обрабатывал определенные разновидности путевых имен. Это подробно обсуждалось в POSIX.
Bash 5.1 теперь обрабатывает расширение имени пути так же, как раньше это делал bash-4.4. Другими словами, текст не раскрывается как путь, если слово содержит обратную косую черту, но не содержит специальных символов подстановки без кавычек.
В новом выпуске также есть изменения в обработке прерываний при чтении с терминала, например, при выполнении операций чтения и выбора, с несколькими исправлениями ошибок, которые привели к сбою оболочки.
Еще одно улучшение — это механизм случайных чисел. Есть новая переменная SRANDOM, которая получает свои случайные данные от энтропийного механизма системы. Это означает, что он избегает линейности и не может быть повторно использован для получения идентичной случайной последовательности.
Обработка массивов также была улучшена за счет новой переменной массива, которую можно использовать для запуска нескольких команд перед печатью основного приглашения. Вы также можете назначить серию пар «ключ-значение» в составном назначении.
Разработчики говорят, что самая заметная новая функция — в Readline. Появилась новая опция «лица», которая выделяет выделенную область текста. Была добавлена опция выделения текста, вставленного операцией вставки в скобках, чтобы вы могли видеть, что было вставлено. Он также отмечает текст, найденный при инкрементальном и не инкрементном поиске в истории.
Bash 5.1 теперь доступен на Git.