Kabuk programları programlama dillerine benzer.Okuma ,yazma,kontrol ve döngü işlemlerini yapabilecek komutlara sahiptir.Kabuk programlarını vi editöründe yapabiliriz.Çalıştırmak istendiğinde “sh kabuk programı [1]” yazmak yeterlidir.Kabuk programlarında kullanılan bazı özel komutlar şunlardır.”exec” kabuk programları içinde yeni bir işlem yaratmaksızın komut çalıştırabilmesine olanak sağlar.”newgrp” grup tanımın değiştirmek için “newgrp [2] [3] yazmak yeterlidir.”set” çevre değişkenlerini topluca görüntülemek için kullanılır.Mevcut tüm çevresel değişkenleri yok etmek amacıyla “unset” kullanılır.
Kabuk programlarında kullanılan for,until,while gibi döngülerden kurtulmak için “break” komutu kullanılır.Belirtilen ifadeleri görüntülemek içim “echo” kullanılır (echo “bugünün tarihi \c”
Date)Kabuk programlarında yer alan değişkenlere klavyeden bilgi atanmasını sağlamak için read komutu kullanılır.
Bir ifadenin mantıksal değerinin alacağı durumlara göre döngü komutlarını kontrol için “test [4] komutu kullanılır.”-r dosya” belirtilen dosya mevcut ise ve kullanıcı tarafından okunabilir durumda ise doğru(-w ve -x yazma ve çalıştırma için),”-s dosya” dosya mevcut ve içi dolu ise doğru,”-d dosya” dosya bir dizin ise doğru seçenekleri kullanılır.Kabuk programını n numaralı işlemin kesilmesine kadar bekletmek için “wait n” kullanılır.
Kabuk programları içindeki komutları belirli koşullara bağlamak için if komutu kullanılır. Kullanımı
if koşul
then komut
else komut
fi
biçimindedir.Bir liste içinde yeralan değerlerin herbiri için,belirlenen komutları ardarda çalıştırmak için for komutu kullanılır.Kullanımı
for değişken
in liste
do
komutlar
done
biçimindedir. While
komutlar
do
komutlar
done
biçiminde tanımlı döngüden de faydalanbiliriz.örneğin
while test -d *
do
ls -al *
done
bir dizine rastlayıncaya kadar tüm dosyaları listeler.Until komutu tanımı da while komutuyla aynıdır.Until komutunda döngüye son verme işlemi bir koşula bağlanır.