Terminal ortamına yeni bir yazılım yüklediğinizde, genellikle giriş yapmanız gereken bilgi iletişim kutusunun açıldığını görebilirsiniz, örneğin: RHEL / CentOS kurulumla birlikte gelir, iletişim kutusu türleri şifre kutusu, kontrol listesi, menü vb. İçerir. . Gerekli bilgileri sezgisel bir şekilde girmeniz için size rehberlik edebilirler ve böylesine kullanıcı dostu bir iletişim kutusu kullanmanın faydaları açıktır. Aşağıda gösterildiği gibi:
Etkileşimli bir kabuk komut dosyası yazdığınızda, kullanıcı girdisini kabul etmek için böyle bir iletişim kutusu kullanabilirsiniz. Whiptail, Zenity veya xdialog GUI betik kodlarına benzer şekilde, kabuk betiklerinde uçbirim tabanlı diyaloglar ve mesaj kutusu işlemleri oluşturabilir. Whiptail, tüm Linux dağıtımlarında önceden yüklenmiştir.
Bir mesaj kutusu oluşturun
Herhangi bir metin mesajına devam etmek için bir mesaj kutusu bir onay düğmesi görüntüler.
dilbilgisi:
kırbaç - başlık " < mesaj kutusu başlığı > "--msgbox" < gösterilecek metin > " < yükseklik > < Genişlik >
Örnekler:
#! / bin / bash
whiptail --title "Mesaj Kutusunu Test Et" --msgbox "Kamçı kuyruklu bir mesaj kutusu oluşturun. Devam etmek için Tamam'ı seçin." 1060
Evet / hayır diyaloğu oluştur
Kullanıcının evet veya hayır girmesi için bir iletişim kutusu.
dilbilgisi:
kırbaç - başlık " < iletişim kutusu başlığı > "--Evet Hayır" < gösterilecek metin > " < yükseklik > < Genişlik >
Örnekler:
#! / bin / bash
eğer (whiptail - title "Test Evet / Hayır Kutu" --yesno "Evet ve Hayır arasında seçim yapın" 1060) o zaman
echo "Evet'i seçtiniz. Çıkış durumu $ mı ?."
Başka
echo "Hayır'ı seçtiniz. Çıkış durumu $ mıydı ?."
fi
Ya da "--yes-button", "--no-button" seçeneklerini kullanabilirsiniz.
#! / bin / bash
eğer (whiptail --title "Test Yes / No Box" --yes-button "Skittles" - düğmesiz "MM'ler" --yesno "Hangisini daha çok seviyorsun?" 1060) o zaman
echo "Skittles Çıkış durumunu $ olarak mı seçtiniz ?."
Başka
echo "MM'leri seçtiniz. Çıkış durumu $ mıydı ?."
fi
Bir form giriş kutusu oluşturun
Kullanıcının rastgele metin girmesini istiyorsanız, bir giriş kutusu kullanabilirsiniz.
dilbilgisi:
kırbaç - başlık " < giriş kutusu başlığı > "--inputbox" < gösterilecek metin > " < yükseklik > < Genişlik > < Varsayılan metin >
Örnekler:
#! / bin / bash
PET = $ (whiptail --title "Serbest Biçimli Giriş Kutusunu Test Et" --inputbox "Evcil hayvanınızın adı nedir?" 1060 Wigglebutt 3 > 11 > yirmi iki > 3)
exitstatus = $?
; o zaman
echo "Evcil hayvanınızın adı:" $ PET
Başka
echo "İptal'i seçtiniz."
fi
Bir şifre kutusu oluşturun
Parola kutusu, kullanıcının hassas bilgileri girmesi gerektiğinde kullanışlıdır.
dilbilgisi:
kırbaç - başlık " < şifre kutusu başlığı > "--passwordbox" < gösterilecek metin > " < yükseklik > < Genişlik >
Örnekler:
#! / bin / bash
ŞİFRE = $ (whiptail --title "Şifre Kutusunu Test Et" - şifre kutusu "Şifrenizi girin ve devam etmek için Tamam'ı seçin." 10603 > 11 > yirmi iki > 3)
exitstatus = $?
; o zaman
echo "Şifreniz:" $ PASSWORD
Başka
echo "İptal'i seçtiniz."
fi
Menü çubuğu oluşturun
Kullanıcının rastgele bir sayıda seçenek seçmesini istediğinizde, menü kutusunu kullanabilirsiniz.
dilbilgisi:
kırbaç - başlık " < menü başlığı > "--Menü" < gösterilecek metin > " < yükseklik > < Genişlik > < menü yüksekliği > < < etiket > < eşya > > ...
Örnekler:
#! / bin / bash
SEÇENEK = $ (whiptail --title "Test Menüsü İletişim Kutusu" --menu "Seçeneğinizi seçin" 15604 \
"1" "Izgara Baharatlı Sosis" \
"2" "Izgara Hellim Peyniri" \
"3" "Kömürlü Tavuk Kanadı" \
"4" "Patlıcan Kızartması" 3 > 11 > yirmi iki > 3)
exitstatus = $?
; o zaman
echo "Seçtiğiniz seçenek:" $ OPTION
Başka
echo "İptal'i seçtiniz."
fi
Radyolist iletişim kutusu oluştur
dilbilgisi:
kırbaç - başlık " < radyolist başlığı > "--radiolist" < gösterilecek metin > " < yükseklik > < Genişlik > < liste yüksekliği > < < etiket > < eşya > < statü > > ...
Örnekler:
#! / bin / bash
DISTROS = $ (whiptail --title "Test Kontrol Listesi İletişim Kutusu" --radiolist \
"Seçtiğiniz Linux dağıtımı nedir?" 15604 \
"debian" "Saygıdeğer Debian" AÇIK \
"ubuntu" "Popüler Ubuntu" KAPALI \
"centos" "Kararlı CentOS" KAPALI \
"nane" "Yükselen Yıldız Darphanesi" KAPALI 3 > 11 > yirmi iki > 3)
exitstatus = $?
; o zaman
echo "Seçilen dağıtım:" $ DISTROS
Başka
echo "İptal'i seçtiniz."
fi
Tablo oluştur iletişim kutusu
Liste diyaloğu, kullanıcının bir listede birden fazla seçenek seçmesini istediğinizde kullanışlıdır Radyolist diyalog penceresi yalnızca birinin seçilmesine izin verir.
dilbilgisi:
kırbaç - başlık " < kontrol listesi başlığı > "--checklist" < gösterilecek metin > " < yükseklik > < Genişlik > < liste yüksekliği > < < etiket > < eşya > < statü > > ...
Örnekler:
#! / bin / bash
DISTROS = $ (whiptail --title "Test Kontrol Listesi İletişim Kutusu" - kontrol listesi \
"Tercih edilen Linux dağıtımlarını seçin" 15604 \
"debian" "Saygıdeğer Debian" AÇIK \
"ubuntu" "Popüler Ubuntu" KAPALI \
"centos" "Kararlı CentOS" AÇIK \
"nane" "Yükselen Yıldız Darphanesi" KAPALI 3 > 11 > yirmi iki > 3)
exitstatus = $?
; o zaman
echo "Favori dağıtımlarınız:" $ DISTROS
Başka
echo "İptal'i seçtiniz."
fi
Bir ilerleme çubuğu oluşturun
İlerleme çubuğu, kullanıcı dostu bir iletişim kutusudur. Whiptail, standart girişten bir yüzde (0-100) okur ve karşılık gelen sayımı bir tabloda görüntüler.
dilbilgisi:
whiptail --gauge " < göstermek için test > " < yükseklik > < Genişlik > < ilk yüzde >
Örnekler:
#! / bin / bash
{
için ((i = 0; i < = 100; i + = 20)); yapmak
uyku 1
echo $ i
bitti
} | whiptail --gauge "Yüklerken lütfen bekleyin" 6600