Kabuk Nedir
Önceki I. Oylum - Giriş Sonraki
Kabuk Nedir
Temelinde, bir kabuk, komutları çalıştırmaya yarayan basit bir makro işlemcisidir. Burada makro işlemcisi terimi, metinlerin ve sembollerin daha geniş ifadeler oluşturmak üzere genişletilmesi işlevini yerine getiren anlamındadır.
Bir Unix kabuğu, hem bir komut yorumlayıcısı hem de bir programlama dilidir. Bir komut yorumlayıcı olarak, GNU araçlarından zengin bir demeti barındıran bir arayüzdür. Programlama dili özellikleri ise bu araçları birarada kullanabilmeyi mümkün kılar. Komutları içeren dosyalar oluşturulabilir ve bu dosyaların kendileri birer komut haline gelebilir. Bu yeni komutlar /bin dizinindeki sistem komutları gibi kullanıcılara ve gruplara ortak kullandıkları işlemleri otomatikleştiren özelleştirilebilir ortamlar sağlayabilir.
Kabuklar etkileşimli ya da etkileşimsiz kullanılabilirler. Etkileşimli kipte, girdi klavyeden kabul edilirken, etkileşimsiz kipte bir dosyadan okunur.
Bir kabuk, GNU komutlarını hem eşzamanlı hem de eşzamansız çalıştırabilir. Kabuk, başka bir girdi kabul etmeden önce eşzamanlı komutların işlemlerini bitirmesini bekleyebileceği gibi, eşzamansız komutlara paralel olarak kabuğun ek komutları okumasını ve çalıştırmasını sağlayabilir. Yönlendirme yapıları ile bu komutların giriş ve çıkışlarının kolayca denetlenmesini mümkün kılar. Üstelik, komutların çalıştırıldığı ortam üzerinde de denetimi sağlar.
Kabuklar ayrıca ayrı araçlar üzerinden sağlanması sakıncalı olan ya da imkansız olan işlevselliği sağlamak üzere yerleşik komutların (yerleşikler - builtins) küçük bir demetini barındırır. Örneğin, cd, break, continue ve exec) komutları doğrudan kabuğun kendisini etkilediğinden kabuk dışında gerçeklenemezler. history, getopts, kill veya pwd yerleşikleri ise, diğerlerine karşın ayrı araçlar olarak gerçeklenebilirdi ama yerleşik komutlar olarak kullanılması daha faydalıdır. Tüm kabuk yerleşikleri kılavuzun ileri bölümlerinde anlatılmıştır.
Komutlar icra edilirken kabuğun esas gücü (ve karmaşıklığı) kabuğun gömülü programlama dilinden gelir. Diğer yüksek seviyeli programlama dilleri gibi kabuk da değişkenler, akış denetim yapıları, işlevler içerir ve ayrımlama yapabilir.
Kabuğun özellikleri programlama dilini güçlendirmekten ziyade özellikle etkileşimli kullanımı kuvvetlendirmeyi öne çıkarır. Bu etkileşim özellikleri iş denetimi, komut satırı düzenlemesi, komut geçmişi ve takma adlardır. Bu özelliklerin herbiri kılavuzun ileri bölümlerinde açıklanmıştır.
Önceki Üst Ana Başlık Sonraki
Bash Nedir? Başlangıç II. Oylum - Terimler
Bir Linux Kitaplığı Sayfası