Zenity betiği ile otomatik bilgisayar kapatma

Ubuntu Türkiye Wiki sitesinden
20.50, 16 Ağustos 2010 tarihinde EsatYuce (mesaj | katkılar) tarafından oluşturulmuş 8408 numaralı sürüm
Gezinti kısmına atla Arama kısmına atla

Ne İşe Yarar?

Zenity betiği bilgisayarınızı, belirlediğiniz dakika içersinde otomatik olarak kapatır. Örneğin bilgisayarınızın 10dakike içersinde kendiliğinden kapanmasını istiyorsanız, Zenity uygulamasını açıp, "10" yazmanız yeterli olacaktır.


Kaynak kodu


#!/bin/bash<br />

<br />

export kapat="sudo halt"<br />
<br />

sen=`zenity --entry --title="Biligisayarı kapat" --text="Dakika olarak bir zaman giriniz:      " `<br />

if [ $? -eq 1 ] ; then<br />

exit 1<br />

fi<br />


if [ $sen -gt 5 ]<br />

          then<br />

                    let "zaman=$sen*60-1"<br />

                    let "kes=$zaman/5"<br />

                    let "xx=$kes/60"<br />
                    echo $zaman<br />
                    echo $kes<br />
                    let "kalan=$sen-$xx"<br />
                    let "kalan1=$sen-$xx*2"<br />
                    let "kalan2=$sen-$xx*3"<br />
                    let "kalan3=$sen-$xx*4"<br />
                    echo $kalan<br />
           else<br />
                    let "zaman=$sen*60-1"<br />
                    let "kes=$zaman/5"<br />
                    echo $zaman<br />
                    echo $kes<br />
                    let "kalan=$zaman-$kes"<br />
                    let "kalan1=$zaman-$kes*2"<br />
                    let "kalan2=$zaman-$kes*3"<br />
                    let "kalan3=$zaman-$kes*4"<br />
                    echo $kalan<br />
fi<br /><br />

if [ $zaman -gt 300 ]<br />
          then<br />
                      echo sure="dakika"<br />
                      export sure="dakika"<br />
           else<br />
                     echo sure="saniye"<br />
                     export sure="saniye"<br />
fi<br />
<br />
<br />
(<br />
echo "10" ; sleep 1<br />
echo "#Sistem $sen dakika sonra kapatılıcak.." ; sleep $kes<br />
echo "20" ; sleep 0<br />
echo "#Bilgisayar  $kalan $sure sonra kapatılıcak"  ; sleep $kes<br />
echo "50" ; sleep 0<br /><br />
echo "#Bilgisayar  $kalan1 $sure sonra kapatılıcak"  ; sleep $kes<br />
echo "75" ; sleep 0<br />
echo "#Bilgisayar  $kalan2 $sure sonra kapatılıcak"  ; sleep $kes<br />
echo "# Sistem  $kalan3 $sure sonra kapatılıyor..." ; sleep $kes<br />
echo "99" ; sleep 0<br />
$kapat<br />
echo "100" ; sleep 0<br />
) |<br />
zenity --progress  --title="Kapat"  --text="Sistem $sen dakika sonra kapatılıcak.."  --percentage=0<br />
if [ $? -eq 1 ] ; then<br />
zenity --error  --text="Bilgisayarın Kapatılması İptal Edildi." ;<br />
exit 1<br />
fi<br />

Çalışma Mantığı

Betiğin çalışma mantığı; öcelikle kullanıcıdan bilgisayarı kapatmak için şifre istiyor, Dakika olarak zaman girdisi istiyor. Daha sonra zaman sona erdiğinde sistemi iptal ediyor Her zamanki gibi denemek için kodları bir metin belgesine yapıştırıp. çalıştırma hakkı vermek yeterli...


Ayrıca bakınız

Kaynak

Ubuntu-te Forumdaki Zenity, Bilgisayarı Kapat! konusu