Автор оригіналу статті — Chet Ramey.

Вступ

Bash — це проект Bourne Again SHell, повна реалізація детального каркасу IEEE POSIX та Open Group з інтерактивним редагуванням командного рядка, контроль роботи на структурах, що підтримують його, функції csh, такі як заміна історії та розширення підтяжки, а також заміщення інших функцій. Ось короткий список деяких функцій, доступних у Bash.

Щоб отримати додаткові відомості про функції Bash, нові для цього каркасу, див. довідку. Існує також велика man сторінка, яка має стиль Unix. Сторінка man є остаточним описом функцій каркасу.

Bash — це вільне програмне забезпечення, яке розповсюджується за умовами GNU General Public License, версія 3.

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

Поточний стан

Поточна версія bash — bash-4.4. (Підпис GPG).

Завантажуваний файл tar з поточною версією з усіма офіційними патчами доступний у репозиторії GNU git.

Знімок поточних джерел розробки (загалом оновлюється щотижня) також доступний у гілці GNU git bash devel.

Для отримання додаткової інформації див. Файл README.

Файл НОВИНИ детально перераховує нові функції в bash-4.4.

Наявність вихідного коду

Поточна версія bash доступна з ftp.cwru.edu і з майстра GNU ftp-сайту та його багатьох віддзеркалень. Цей файл розповсюдження містить форматовані копії документацій.

Ці файли підписані з моїм ключем GPG.

Доступні декілька файлів для FTP з ftp.cwru.edu.

Будь-які патчі для поточної версії доступні з CWRU та ftp.gnu.org.

Завантажуваний файл tar з поточною версією з усіма офіційними патчами доступний у сховищі GNU git, а знімок поточних джерел розробки (загалом оновлюється щотижня) також доступний у гілці розробки GNU bash git devel.

Попередні версії Bash доступні на ftp://ftp.gnu.org/gnu/bash.

Розподіл

Bash — це стандартний каркас в системах GNU / Linux, більшість з яких використовують bash-4.3. Bash-4.3 включено до складу колекції портів FreeBSD, колекції пакетів OpenBSD та NetBSD.

Проект OpenPKG робить джерело RPM башу-4.3 доступним для різних систем Unix і Linux як основну частину поточного випуску.

Поточні версії Mac OS X (від Jaguar / Mac OS X 10.2) постачаються з баш-3.2 як / bin / sh. Існують також попередньо скомпільовані пакети OS X пакетів bash-4.3, доступні з багатьох веб-сайтів, хоча вихідні пакунки, як правило, є більш сучасними. Баш для Дарвіна (база для MacOS X) доступний у MacPorts, Homebrew або Fink.

Користувачі Solaris 2.x та Solaris 7/8/10/11 можуть отримати попередньо скомпільовану версію bash-4.3 з сайту Unixpackages (підписку) або з OpenCSW. Oracle кораблі bash-3.2 як підтримувану частину Solaris 10 і bash-4.1 у складі Solaris 11. Версія Solaris / Illumos, що поширюється як OpenIndiana, включає bash-4.3 станом на вересень 2016 року.

Користувачі AIX можуть отримувати попередньо скомпільовані версії випусків bash-4.3 і старі для різних версій AIX від Groupe Bull, а також джерел та бінарних файлів bash-4.3 для різних випусків AIX від perzl.org. IBM робить Bash-4.2 та Bash-4.3 доступними для AIX 5L, AIX 6.1 та AIX 7.1 у складі пакета інструментів AIX для [GNU /] Linux-додатків. Вони використовують формат RPM; ви також можете отримати RPM для AIX.

Користувачі HP-UX можуть отримувати binaries і вихідний код bash-4.3 з портативного програмного забезпечення та архівного центру для HP-UX. (Поточна версія станом на цю дату — bash-4.3.46).

Він навіть доступний на Minix. Якщо ви використовуєте Windows, рекомендую використовувати Cygwin, який в даний час поставляє bash-4.3.42 і bash-4.3.46 або MinGW, який в даний час має bash-3.1.23 як частину базової системи MSYS.

Microsoft пропонує «Баш на Ubuntu в Windows» як інстальований додаток для Windows 10. Це, в основному, окрема пакетна версія Ubuntu, яка працює як додаток для Windows 10, і пропонує баш-4.3 в цьому середовищі.

Інші ресурси

Список найбільш поширених питань з відповідями, хоча цей документ більше не підтримується.

Список дискусій bug-bash@gnu.org часто містить інформацію про нові порти Bash, обговорення нових функцій або поведінки, які люди хотіли б змінити. Список розсилки — це повідомлення про помилки в bash і виправлення. Цей список розсилки також доступний як група новин Usenet, gnu.bash.bug.

Архіви помилок-башів, що містяться в грудні 1999 року, доступні зі списків .gnu.org. Групи Google мають архів gnu.bash.bug.

Загальні питання про програму bash та каркас слід надсилати на пошту розсилки help-bash@gnu.org. Його архіви також доступні на lists.gnu.org.

Деякі файли з поточного дистрибутива також можуть бути корисними.

  • README: файл, що описує Bash
  • НОВИНИ: файл точно перераховує помітні зміни між поточною та попередніми версіями
  • CHANGES: повна історія змін bash
  • ВСТАНОВИТИ: інструкції з монтажу
  • ПРИМІТКИ: специфікація конфігурації платформи та примітки щодо роботи
  • COMPAT: проблеми сумісності між bash4 та попередніми версіями
  • POSIX: що змінюється, коли bash знаходиться в режимі posix?

Ось пара документів, які написав автор на bashі.

  • Робота, яку я представив на ROSE 94 в Бухаресті, Румунія (PS).
  • Ще одна стаття від Usenix; login (PS).
  • Глава в архітектурі програм з відкритим кодом.

Повідомлення про помилки

Звіти про помилки для bash слід надіслати на bug-bash@gnu.org за допомогою програми bashbug, яка будується та встановлюється одночасно з башем.

Список дискусій bug-bash@gnu.org часто містить інформацію про нові порти Bash, обговорення нових функцій або поведінки, які люди хотіли б. Цей список розсилки також доступний як група новин usenet gnu.bash.bug. Ви можете підписатися і отримати список на lists.gnu.org.

Коли ви надсилаєте звіт про помилку, будь ласка, використовуйте програму bashbug, побудовану в той же час як bash. Якщо bash не вдалося побудувати, спробуйте побудувати bashbug безпосередньо з make bashbug. Якщо ви не можете створювати bashbug, будь-ласка, відправте пошту bug-bash@gnu.org з наступною інформацією:

  • Номер версії та статус випуску Bash (наприклад, 2.05-release)
  • Машина та операційна система, на якій вона працює (ви можете запускати bashversion -l з каталогу збірки bash або переглядати файл «.made» у цьому каталозі для цієї інформації)
  • Перелік прапорів комбінації або вмісту «config.h», якщо це необхідно
  • Опис помилки
  • Рецепт безпечного відновлення помилок
  • Виправлення помилки, якщо у вас є!

Програма bashbug включає більшу частину цього автоматично.

Якщо ви хочете зв’язатися безпосередньо з відповідальним Bash, відправте своє повідомлення на пошту bash-maintainers@gnu.org.

Від автора

Я відповідаю за Bash, і можна зв’язатись за допомогою ціє адреси bash-maintainers@gnu.org. Будь-ласка, надішліть доповнення та виправлення щодо цієї сторінки до chet.ramey@case.edu.