Çoğu Linux dağıtımındaki varsayılan kabuk olan Bash'i duymuş olabilirsiniz. Linux'ta önceden yüklenmiş olarak gelen başka bir kabuk daha var: Bourne kabuğu.

Bourne kabuğu, Bash kadar yaygın kullanılmasa da, modern Linux sistemlerinde halen kullanılan en eski kabuklardan biridir. İşte Linux'ta Bourne kabuğu hakkında bilmeniz gerekenler.

Bourne Kabuğu Nedir?

Genellikle "sh" olarak kısaltılan Bourne kabuğu, adını İngiliz bilgisayar bilimcisi Stephen R. Bourne, 1978'de Bell Laboratuarlarında çalışırken geliştirdi. Kabuk, Unix'in orijinal yaratıcılarından biri olan Ken Thompson tarafından yazılan eski Thompson Kabuğu'nun yerini aldı.

Bourne kabuğu, 1979'da Versiyon 7 Unix ile çıkış yaptı. Akış kontrolü, değişkenler ve geliştirilmiş dize işleme gibi özelliklere sahipti. Bu özellikler, kabuğun diğer programları çağırmanın bir yolu olmaktansa bir programlama dili olarak kullanılmasını kolaylaştırdı.

Bourne kabuğu, Unix sistemlerinde taşınabilir betikler yazmak için popüler olmaya devam ederken, Etkileşimli kullanım için yerini C kabuğu, KornShell, Bash olarak da bilinen Bourne Again kabuğu ve Z almıştır. kabuk. Bu kabuklar aşağıdaki gibi özellikler sunuyordu:

instagram viewer
komut geçmişi ve komut satırı düzenleme bu, kullanıcılar ve yöneticiler için hayatı kolaylaştırdı.

KornShell, Bash ve Z kabuğu (daha sonra ele alınacaktır), Bourne kabuğundan etkilenen sözdizimlerine sahiptir.

Perl ve Python gibi daha da gelişmiş özelliklere sahip daha güçlü platformlar arası komut dosyası dilleri de büyük ölçüde kabuk komut dosyasının yerini aldı.

Yine de, Bourne kabuğu yaygın olarak anlaşılmaktadır ve Linux programlarıyla birlikte sağlanan birçok komut dosyası, çeşitli görevler için onun sözdizimini kullanır.

Bourne kabuğunun davranışı şu şekilde kodlandı: POSIX standardı, pek çok modern Unix benzeri sistem bunu bir şekilde uyumlu bir kabuk kullanarak uygular.

Modern Bourne Kabuğu Alternatifleri

Linux sistemlerinde orijinal Bourne kabuğuna birkaç açık kaynaklı modern alternatif vardır. İşte en iyi bilinenlerden bazıları:

1. Bourne Yeniden Kabuğu (Bash)

İsim Bourne Again kabuğu (Bash) Bourne kabuğunda bir oyundur. Bu kabuk başlangıçta GNU sisteminin bir bileşeni olarak geliştirildi ve Linux'tan birkaç yıl öncesine dayanıyordu.

Orijinal olarak Bourne kabuğu için yazılmış betiklerle büyük ölçüde uyumludur. Ayrıca KornShell'in öncülüğünü yaptığı komut satırı düzenleme gibi özellikleri de bünyesinde barındırıyordu.

Bash, birçok Linux dağıtımındaki varsayılan kabuktur ve bu nedenle kendi başına fiili bir standart haline gelmiştir.

2. KornShell

KornShellksh olarak da bilinen, ilk olarak 1980'lerde yine Bell Laboratuvarlarında David Korn tarafından geliştirildi. Bourne kabuğunun üzerine inşa edilen KornShell, iş kontrolü, diziler ve komut satırı düzenleme gibi bazı ek özellikler getirdi. İkincisi, ilk ortaya çıktığında devrim niteliğinde bir özellikti çünkü C kabuğunun geçmiş mekanizmasını kullanmaktan çok daha kolaydı.

Önceden verilmiş bir komutu yeniden düzenlemeniz gerekirse, bunu yapmak için Vi veya Emacs'a benzer komutlar kullanabilirsiniz.

KornShell, Oracle Solaris gibi bazı ticari Linux sistemlerinde varsayılandı. Orijinal KornShell başlangıçta AT&T tarafından tescilli bir lisans altında piyasaya sürüldüğünden, sonunda pdksh adlı açık kaynaklı bir sürüm yayınlandı.

3. Almquist/Debian Almquist Kabuğu

Almquist kabuğu orijinal olarak Kenneth Almquist tarafından yazılmıştır ve Bourne kabuğunun hafif bir yedeği olması amaçlanmıştır. Birçok BSD sistemi bunu sh'nin uygulaması olarak içerir.

1990'larda Debian'a bir sürüm taşındı ve Debian Almquist kabuğu olarak biliniyor. Adından da anlaşılacağı gibi, sh'nin Debian ve Ubuntu sistemlerinde uygulanmasıdır.

4. Z Kabuk

Z kabuğu, veya zsh, orijinal olarak 1990 yılında Paul Falsted tarafından geliştirilen en yeni kabuklardan biridir. Z kabuğu, gelişmiş özellikleriyle tanınır hale geldi. İyi bir örnek, özyinelemeli globbing veya alt dizinlerdeki joker karakterleri eşleştirme yeteneğidir.

Z kabuğu, macOS ve Kali Linux için varsayılan oturum açma kabuğudur.

Bourne Kabuğu Uyumluluğu

Bu kabuklar, orijinal olarak Bourne kabuğu için yazılmış betiklerle büyük ölçüde uyumlu olsa da, davranışlarını orijinal kabuğa daha çok benzeyecek şekilde değiştirmenin yolları vardır.

Bunu yapmanın ana yolu, sembolik bir bağlantı. Çoğu sistem sembolik bağlantı kuracaktır /bin/sh Bash'e veya başka bir kabuğa. Bu şekilde çağrıldığında, kabuk, Bourne kabuğu ile uyumluluk moduna girecektir.

Hangi kabuğu görebilirsin /bin/sh ile bağlantılıdır ls komutu:

ls -l /bin/sh

Artık Bourne Shell'i Biliyorsunuz

Bourne kabuğu, Unix benzeri sistemlerde komut dosyası oluşturmaya yönelik en eski standartlardan biridir. Başka kabuklarla değiştirilmiş olsa bile, başkaları tarafından yazılan komut dosyalarını çalıştırmak için hala hayati önem taşır.

Bash, özellikle değişkenlere yaklaşımı açısından, kodlama için en iyi Bourne türevlerinden biridir. Bir sonraki projeniz için onu düşünmenizi sağlayabilecek bazı benzersiz değişkenlere sahiptir.