Daha Fazla Örnek
Önceki tput: Taşınabilir Uçbirim Denetimi Sonraki
Daha Fazla Örnek
Burada tput kullanımı ile ilgili biraz kabuk programlama gerektiren daha karmaşık örneklere yer verilmiştir. C kabuğunun akış denetimi (karar verme mekanizması) diğer kabuklardan farklı oluşturulduğundan bu örnekler C kabuğunda çalışmaz.
Aşağıdaki örnekte uçbirim üste yazmama yapabiliyorsa Ben işimin başındayım basar ve üstünü çizer; yapamıyorsa Ben grevdeyim dizgesini basar.
if tput os; then
    echo -e 'Ben işimin başındayım\r--- ------ ----------'
else
    echo 'Ben grevdeyim'
fi
Aşağıdaki örnekte komut satırı argümanı olarak verilen dizgeyi satıra ortalayarak basan bir betik görülmektedir. Bu işlem için diğer bir yaklaşım, çok sayıda boşluğu basmak için while döngüsü kullanmak yerine tput'un rep terminfo yeteneğini göndermesi olurdu.
COLUMNS=`tput cols` export COLUMNS # Ekran genişliği
echo "$@" | awk '
{ spaces = ('$COLUMNS' - length) / 2
  while (spaces-- > 0) printf (" ")
  print
}'
Aşağıdaki betikte uçbirimin imleç konumu kaydedilmekte, ekranın ortasına negatif olarak Merhaba Dünya basılmakta ve imleç tekrar eski konumuna dönmektedir.
COLUMNS=`tput cols`
LINES=`tput lines`
line=`expr $LINES / 2`
column=`expr \( $COLUMNS - 6 \) / 2`
tput sc
tput cup $line $column
tput rev
echo 'Merhaba Dünya'
tput sgr0
tput rc
Yukarıdaki örneğin ortasındaki üç satır --standard-input seçeneği kullanılarak da yazılabilirdi:
tput --standard-input <<EOF
sc
cup $line $column
rev
EOF
Önceki Üst Ana Başlık Sonraki
Çıktılama ve Çıkış Durumu Başlangıç Yetenekler
Bir Linux Kitaplığı Sayfası