Bash
Geliştirici(ler) | GNU Projesi |
---|---|
Güncel sürüm | 5.2.32 / 2 Ağustos 2024 |
Programlama dili | C |
İşletim sistemi | Kurulum desteği: Unix benzeri Açtığı sistemler: Platform bağımsız |
Platform | GNU |
Erişilebilirlik | Çokdilli |
Tür | Unix kabuğu, Komut satırı |
Lisans | GPLv3 |
Resmî sitesi | gnu.org/software/bash/ |
Kod deposu |
Bash, Brian Fox tarafından GNU Projesi için Bourne kabuğuna özgür yazılım alternatifi olarak yazılmış, Unix ve benzeri işletim sistemlerinde kullanılan komut satırı kabuğu ve bu kabuğun betik dilidir. GNU Tasarısı'nın parçasıdır ve birçok GNU/Linux dağıtımında ön tanımlı kabuk olarak gelir. Ayrıca bir versiyonu Windows 10 için Linux İçin Windows Alt Sistemi aracılığıyla mevcuttur.[1] Solaris 11'in de varsayılan kullanıcı betiğidir.[2] Bash ayrıca 2019 öncesinde çıkan tüm MacOS sürümlerinde varsayılan kabuktu.
Bash, genellikle yazı pencerelerinde çalışan bir komut istemcisidir. Kullanıcıların pencerede yazdığı komutlar bu istemci tarafından eyleme dökülür. Bash ayrıca kabuk betik dili denilen dosyaları okuyup çalıştırabilir.
İsmi, Bourne kabuğunun yerine geçtiğini belirten bir kelime oyunu olan "Bourne-again shell" kelimelerinin kısaltılmasıyla oluşmuştur.
Tarihçe
Brian Fox, Richard Stallman'ın aynı amacı güden bir proje üzerine çalışan yazılımcının yavaşlığından memnuniyetsiz olması üzerine 10 Ocak 1988'de Bash'i kodlamaya başladı. Stallman ve Özgür Yazılım Vakfı (FSF), BSD ve GNU yazılımlarını kayda değer kılmak ve tam anlamıyla özgür işletim sistemleri olabilmeleri için özgür bir kabuğun gerekliliğini dillendiriyorlardı ve Fox da bu amaçla FSF'de işe alındı. Fox, Bash'in ilk beta sürümü olan versiyon .99'u 8 Haziran 1989'da yayınladı ve 1992-1994 arasına kadar proje yöneticiliğini sürdürdü. FSF'den ayrılışının ardından makamını Chet Ramey isimli bir erken geliştiriciye devretti.[3][4][5]
Zamanla Bash, Linux kullanıcıları arasında en çok tercih edilen kabuk haline geldi ve Linux dağıtımlarının varsayılan kabuğu oldu.[5][6] Bash ayrıca Microsoft Windows'a taşındı ve Cygwin, MinGW ve DJGPP aracılığıyla DOS'a, GNV projesi aracılığıyla Netware ve OpenVMS'ye,[7] çeşitli yazılımlar aracılığıyla ArcaOS[8] ve Android gibi ortamlara dağıtıldı.
Özellikleri
Bash, orijinal Unix Bourne kabuğundan esinlendiği için sh ile uyumludur. Dizin yönetimi, iş kontrolü, alias'lar gibi Korn ve C kabuğunun önemli özelliklerini içermektedir. Bash tek kelimeden oluşan komut satırı seçenekleriyle (-a, -b, -c, -i, -l, -r, vs.) veya—debugger, --help, --login vs. gibi çok karakterli seçeneklerle uyarılabilir. Başlatıcı dosyaları, Bash'in açılırken okuyup çalıştırdığı dosyalardır. Bash kişiselleştirilebilir birçok kısayoldan oluşur. Ayrıca Bash ortam güvenliği için kısıtlı bir mod içerir. Kabuk, --restricted veya bash -r opsiyonlarıyla ya da oturumun rbash olarak adlandırılması durumunda kısıtlı moda geçir.
Başlatıcı betikler
Bash başlatıldığı zaman çeşitli dot dosyalarındaki komutları okuyup çalıştırır. Bash kabuk dosyalarından farklı olarak dot dosyaları çalıştırma iznine sahip değildir veya başlarında #!/bin/bash
gibi bir derleyici yönergesi yoktur.
Bash başlatıcı komut örneği
[ -r ~/.profile ] && . ~/.profile # ortamı hazırlas
if [ -n "$PS1" ] ; then # biz interaktif miyiz?
[ -r ~/.bashrc ] && . ~/.bashrc # interaktif kabuklar için tty/prompt/function kurulumu
[ -r ~/.bash_login ] && . ~/.bash_login # yalnızca giriş kabukları için at-login görevleri
fi # "if" bloğunun sonu
Sürüm geçmişi
Sürüm | Çıkış Tarihi | Çıkış notları |
---|---|---|
bash-5.1 | 2020-12-07 | github version history NEWS 9 Ocak 2022 tarihinde Wayback Machine sitesinde arşivlendi.[9] |
bash-5.0 | 2019-01-07 | [10][11][12] |
bash-5.0-rc1 | 2018-12-20 | |
bash-5.0-beta2 | 2018-11-28 | |
bash-5.0-beta | 2018-09-17 | |
bash-5.0-alpha | 2018-05-22 | |
bash-4.4 | 2016-09-15 | github version history NEWS v4.4 11 Ocak 2022 tarihinde Wayback Machine sitesinde arşivlendi. |
bash-4.4-rc2 | 2016-08-22 | |
bash-4.4-rc1 | 2016-02-24 | |
bash-4.4-beta2 | 2016-07-11 | |
bash-4.4-beta | 2015-10-12 | |
bash-4.3 | 2014-02-26 | |
bash-4.2 | 2011-02-13 | |
bash-4.1 | 2009-12-31 | |
bash-4.0 | 2009-02-20 | |
bash-4.0-rc1 | 2009-01-12 | |
bash-3.2 | 2006-10-11 | |
bash-3.1 | 2005-12-08 | |
bash-3.0 | 2004-08-03 | |
bash-2.05b | 2002-07-17 | |
bash-2.05a | 2001-11-16 | |
bash-2.05 | 2001-04-09 | |
bash-2.04 | 2000-03-21 | |
bash-2.03 | 1999-02-19 | |
bash-2.02 | 1998-04-18 | |
bash-2.01 | 1997-06-05 | |
bash-2.0 | 1996-12-31 |
Ayrıca bakınız
Kaynakça
- ^ "Arşivlenmiş kopya". 8 Mart 2021 tarihinde kaynağından arşivlendi. Erişim tarihi: 28 Şubat 2021.
- ^ "Arşivlenmiş kopya". 12 Haziran 2018 tarihinde kaynağından arşivlendi. Erişim tarihi: 28 Şubat 2021.
- ^ "Arşivlenmiş kopya". 10 Kasım 2012 tarihinde kaynağından arşivlendi. Erişim tarihi: 28 Şubat 2021.
- ^ "Arşivlenmiş kopya". 10 Kasım 2012 tarihinde kaynağından arşivlendi. Erişim tarihi: 28 Şubat 2021.
- ^ a b "Arşivlenmiş kopya". 10 Kasım 2012 tarihinde kaynağından arşivlendi. Erişim tarihi: 28 Şubat 2021.
- ^ Arman Danesh & Michael Jang (2006). "Mastering Linux". John Wiley & Sons. s. 363. 5 Haziran 2023 tarihinde kaynağından arşivlendi.
- ^ "Arşivlenmiş kopya". 3 Ekim 2020 tarihinde kaynağından arşivlendi. Erişim tarihi: 28 Şubat 2021.
- ^ "Arşivlenmiş kopya". 23 Eylül 2020 tarihinde kaynağından arşivlendi. Erişim tarihi: 28 Şubat 2021.
- ^ "BashFAQ/061 - Greg's Wiki". mywiki.wooledge.org. 2 Mart 2021 tarihinde kaynağından arşivlendi. Erişim tarihi: 1 Mart 2021.
- ^ "github version history NEWS v5.0". GitHub (İngilizce). 10 Eylül 2020 tarihinde kaynağından arşivlendi. Erişim tarihi: 1 Mart 2021.
- ^ "Bash changes [Bash Hackers Wiki]". 18 Mart 2020 tarihinde kaynağından arşivlendi. Erişim tarihi: 25 Kasım 2019.
- ^ "Bash-5.0 release available". lists.gnu.org. 8 Kasım 2020 tarihinde kaynağından arşivlendi. Erişim tarihi: 1 Mart 2021.