getopts seçenek-dizgesi [argümanlar]
getopts kabuk betikleri tarafından konumsal parametreleri çözümlemekte kullanılır. seçenek-dizgesi tanınan seçenek karakterlerini içerir; bir karakterden sonra bir iki nokta üstüste karakteri geliyorsa seçeneğin ondan bir boşlukla ayrılmış bir argümana sahip olduğu umulur. : ve ? karakterleri seçenek karakterleri olarak kullanılamaz. Her çağrılışında getopts işlenecek sonraki argümanın indisini OPTIND değişkenine ve isim değişkenini de mevcut değilse ilklendirerek sonraki seçeneği isim kabuk değişkenine yerleştirir. OPTIND kabuğun ya da bir kabuk betiğinin her çağrılışında 1 ile ilklendirilir. Bir seçenek bir argüman gerektirdiğinde getopts argümanı OPTARG değişkenine yerleştirir. Kabuk, OPTIND değişkenini otomatik olarak sıfırlamaz; eğer kullanılacak parametrelerin yeni bir kümesi varsa aynı kabuk çağrısı içinde getopts'a yapılan çoklu çağrılar arasında elle sıfırlanmalıdır.
Seçeneklerin sonuna gelindiğinde, getopts sıfırdan büyük bir çıkış durumu ile çıkar. OPTIND ilk seçenek olmayan argümanın indisine ayarlanır ve ? karakteri isim'e yerleştirilir.
getopts normalde konumsal parametreleri çözümlese de argümanlar verilmişse bunları çözümler.
getopts hataları iki yolla raporlayabilir. Eğer seçenek-dizgesi'nin ilk karakteri bir : ise sessiz hata raporlaması kullanılır. Geçersiz seçenekler veya eksik seçenekler saptandığında normal işlem tanı iletileri basılır. OPTERR değişkeninin değeri 0 ise seçenek-dizgesi'nin ilk karakteri bir : olmasa bile hata iletileri gösterilmez.
Geçersiz bir seçenek görüldüğünde, getopts ? karakterini isim'e yerleştirir ve hata raporlaması sessiz değilse bir hata iletisi basar ve OPTARG değişkenini kaldırır.
getopts sessiz hata raporlama kipinde ise bulunan seçenek karakterleri OPTARG değişkenine yerleştirilir ve hiçbir tanı iletisi basılmaz.
Eğer bir gerekli argüman bulunamazsa ve getopts sessiz kipte değilse isim'e ? karakteri yerleştirilir, OPTARG kaldırılır ve bir tanı iletisi basılır. getopts sessiz kipte ise isim'e : karakteri yerleştirilir ve OPTARG'a bulunan seçenek karakteri yerleştirilir.