Bash 5.2 уже випущено та містить новини, виправлення тощо

бити

Bash (Bourne Again SHell) — це проект GNU, повна реалізація специфікації оболонки POSIX

Після майже 2 років розробки (точніше двадцять місяців розробки) запуск нова версія оболонки GNU bash 5.2, який є оновленням п’ятої гілки (5.x), і що цей випуск виправляє кілька помітних помилок у bash-5.1 і вводить низку нових функцій.

Для тих із вас, хто новачок у bash, ви повинні знати, що це оболонка за замовчуванням у більшості дистрибутивів Linux.

Основні нові можливості Bash 5.2

У цій новій версії, яка представлена ​​з Bash 5.2 зазначається, що була проведена робота над переписуванням коду для аналізу конструкцій підстановки команд і заміна виведення під час виконання іншої команди, такої як "$(команда)" або `команда`. Нова реалізація викликає парсер bison рекурсивно. Це замінює спеціальний аналіз, який використовувався в попередніх версіях, і забезпечує кращу перевірку синтаксису та виявляє синтаксичні помилки набагато раніше.

Ще однією зміною, яка виділяється в цій новій версії Bash 5.2, є покращений аналіз і розширення індексів масиву, плюс реалізовано можливість використання параметрів «@» і «*» у вбудованій команді для скидання ключа до заданого значення замість скидання всього масиву.

На додаток до цього також згадується, що додано новий параметр “patsub_replacement”, коли встановлено, символ «&» у заміненому рядку використовується для заміни частини рядка, яка відповідає заданому шаблону.

Тамбієн наголошується, що існує нова структура часу очікування на лінії читання, яка включає нові
загальнодоступні функції для встановлення тайм-аутів і перегляду часу, що залишився до його закінчення, а також є новий параметр конфігурації: --with-shared-termcap-library, який змушує спільну бібліотеку readline зв’язуватися зі спільною бібліотекою termcap (або curses /ncurses/termlib), тому програмам не потрібно.

З інших змін які відрізняються від цієї нової версії Bash 5.2:

  • Збільшено кількість ситуацій, коли додаткові процеси не розгалужуються, наприклад, розгалуження більше не використовується при використанні конструкції "$("
  • Реалізовано нову внутрішню структуру для обчислення таймера та часу очікування.
  • Надано можливість увімкнути під час компіляції (налаштувати --enable-alt-array-implementation) альтернативну реалізацію масиву, оптимізовану для максимальної швидкості доступу ціною збільшення споживання пам’яті.
  • Розширене використання замін $'…' і $»…» в локалізації.
  •  «printf» має новий специфікатор формату «%Q». Це діє як "%q", але застосовує будь-яку вказану точність до оригінального аргументу без лапок, потім бере в лапки та виводить результат.
  • Додано налаштування noexpand_translations і параметр збірки «configure --enable-translatable-strings», щоб контролювати, чи ввімкнено підтримку замін $"..." для локалізації.
  • У режимі posix `printf' тепер може використовуватися long double для специфікаторів перетворення з плаваючою комою, якщо він присутній, інакше він має бути просто double.
  • Додано та ввімкнено за замовчуванням "globskipdots", щоб уникнути "." і ".." при розширенні маршрутів..

Тоді ж була випущена бібліотека readline 8.2, яка використовується в bash для організації редагування командного рядка.

Наостанок слід зазначити, що цю версію bash можна пов’язати з бібліотекою Readline вже встановлено замість приватної версії в lib/readline, якщо бажаєте. Важливо лише зазначити, що версія о readline-8.1 і пізніші версії можуть надавати всі символи, яких вимагає bash-5.2, тому попередні версії бібліотеки Readline не працюватимуть належним чином.

Нарешті, для тих, хто хоче дізнатися трохи більше, а також для тих, хто хоче отримати цю нову версію зараз, Ви можете відвідати наступне посилання.

Як отримати Bash 5.2 на Linux?

Поки що Залишається лише дочекатися включення цієї нової версії Bash у сховищах дистрибутивів Linux, оскільки це найкращий варіант.


Залиште свій коментар

Ваша електронна адреса не буде опублікований. Обов'язкові для заповнення поля позначені *

*

*

  1. Відповідальний за дані: AB Internet Networks 2008 SL
  2. Призначення даних: Контроль спаму, управління коментарями.
  3. Легітимація: Ваша згода
  4. Передача даних: Дані не передаватимуться третім особам, за винятком юридичних зобов’язань.
  5. Зберігання даних: База даних, розміщена в мережі Occentus Networks (ЄС)
  6. Права: Ви можете будь-коли обмежити, відновити та видалити свою інформацію.