Bash

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. Solaris 11'in de varsayılan kullanıcı betiğidir. 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. 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. 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, çeşitli yazılımlar aracılığıyla ArcaOS 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 bash-5.0 2019-01-07 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 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== * sh * csh * ksh * tcsh * zsh ==Kaynakça== Kategori:Özgür yazılım Kategori:Araştırma projeleri Kategori:Unix Kategori:Betik dilleri Kategori:Metin tabanlı programlama dilleri Kategori:GNU Projesi yazılımları Kategori:1989 yazılımları Kategori:Ücretsiz çapraz platform yazılımları Kategori:C ile programlanmış ücretsiz yazılımlar