man/system_admin
man · Sistem Yönetimi

$ sleep

Bölüm 1 · Sistem Yönetimi

yürütmeyi belirli bir süre boyunca askıya alır

Söz Dizimi

     sleep sayı[birim] [...]

Açıklama

sleep komutu, yürütmeyi en az sayı saniye (varsayılan veya s birimi), dakika (m birimi), saat (h birimi) veya gün (d birimi) boyunca askıya alır. Aralıklar, strtod(3) tarafından izin verilen herhangi bir biçimde yazılabilir. Birden fazla aralık verilirse bunlar birbirine eklenir. Nihai toplam sıfır veya negatifse, sleep derhal sonlanır.

sleep komutu bir sinyal aldığında standart eylemi gerçekleştirir. SIGINFO sinyali alındığında, uyumak için kalan tahmini saniye miktarı standart çıktıya yazdırılır.

Uygulama Notları

SIGALRM sinyali bu uygulama tarafından özel olarak işlenmez.

Çıkış Durumu

sleep aracı başarı durumunda 0, bir hata oluşursa >0 değeriyle sonlanır.

Örnekler

     Yarım saat sonra bir komut çalıştırmak için:

	   (sleep 0.5h; sh command_file >out 2>err)&

     Bu kullanım, command_file betiğini çalıştırmadan önce yarım saat bekler. Bunu yapmanın başka bir yolu için at(1) aracına bakın.

     Bir komutu tekrarlı olarak çalıştırmak için:

	   while :; do
		   if ! [ -r zzz.rawdata ] ; then
			   sleep 5m
		   else
			   for i in *.rawdata ; do
				   sleep 70
				   awk -f collapse_data "$i"
			   done >results
			   break
		   fi
	   done

     Böyle bir betiğin senaryosu şu olabilir: Şu anda çalışan bir programın bir dizi dosyayı işlemesi beklenenden uzun sürüyordur ve ilk program işini bitirir bitirmez (zzz.rawdata oluşturulduğunda) başka bir programın onun oluşturduğu dosyaları işlemeye başlaması iyi olacaktır. Betik her beş dakikada bir zzz.rawdata dosyasını kontrol eder; dosya bulunduğunda, her bir awk(1) görevi arasında nezaketen 70 saniye uyunarak işlemin diğer kısmı gerçekleştirilir.

Ayrıca Bakınız

nanosleep(2), sleep(3)

Standartlar

sleep komutunun IEEE Std 1003.2 (“POSIX.2”) uyumlu olması beklenmektedir.

Tam sayı olmayan aralıklar için destek, saniye dışındaki birimler ve birbirine eklenen birden fazla aralık, ilk olarak GNU sh-utils 2.0a (2002'de yayınlandı) ile tanıtılan taşınamaz uzantılardır.

Tarihçe

Bir sleep komutu Version 4 AT&T UNIX sürümünde yer almıştır.