Синтаксис на командата за заспиване:
номер на сън [наставка]
Можете да използвате всяко цяло число или дробно число като времева стойност. Суфиксната част не е задължителна за тази команда. Ако пропуснете суфикса, стойността на времето се изчислява като секунди по подразбиране. Можеш да използваш с, м, ч и д като стойност на суфикс. Следващите примери показват използването на команда за заспиване с различни наставки.
Пример-1: команда за заспиване без никакъв суфикс
В следния скрипт командата sleep се използва с числова стойност 2 се използва само и без наставка. Така че, ако стартирате скрипта, тогава низът Задачата е изпълнена ще се отпечата след изчакване 2 секунди.
#!/bin/bash
изхвърлен „Изчаква се 2 секунди ...“
сън 2
изхвърлен „Задачата е изпълнена“
Стартирайте файла bash с време команда за показване на трите типа времеви стойности за изпълнение на скрипта. Изходът показва времето, използвано от системата, потребителя и реалното време.
$време башsleep1.sh
Изход:
Пример-2: команда за заспиване с минутен суфикс
В следния скрипт „ м „Се използва като суфикс с команда за заспиване. Тук стойността на времето е 0,05 минути. След изчакване на 0,05 минути, Задачата е изпълнена съобщението ще бъде отпечатано.
#!/bin/bashизхвърлен „Изчаква се 0,05 минути ...“
сън0,05 м
изхвърлен „Задачата е изпълнена“
Стартирайте скрипта с време команда като първия пример.
$време башsleep2.shИзход:
Пример-3: команда за заспиване със суфикс за час
В следния скрипт „ з „Се използва като суфикс с команда за заспиване. Тук стойността на времето е 0.003 часа. След изчакване 0.003 часа Задачата е изпълнена трябва да бъдат отпечатани на екрана, но в действителност това изисква повече пъти ‘H’ се използва суфикс.
#!/bin/bashизхвърлен „Изчаква се 0,003 часа ...“
сън0.003ч
изхвърлен „Задачата е изпълнена“
$време башsleep3.sh
Изход:
Пример-4: команда за заспиване с цикъл
Можете да използвате командата за заспиване за различни цели. В следния пример командата sleep се използва с цикъл while. Първоначално стойността на променливата н е зададен на 1 и стойността на н ще се увеличава с 1 за 4 пъти във всеки 2 интервал от секунди. Така че, кога ще стартирате скрипта, всеки изход ще се появи след изчакване 2 секунди.
#!/bin/bashн=1
докато [ $ n -лт 5 ]
направете
изхвърлен „Стойността на n е сега$ n'
сън2s
изхвърлен ''
((н=$ n+1))
Свършен
Изход:
Пример-5: команда за заспиване в терминала с други команди
Да предположим, че искате да изпълните няколко команди и да зададете фиксиран интервал от време между изходите на две команди, след което можете да използвате командата за заспиване, за да изпълните тази задача. В този пример командата ls и pwd са с сън команда. След изпълнение на командата, ls командата ще покаже списъка с директории на текущата директория и ще покаже текущия път на работната директория след изчакване за 2 секунди.
$ls && сън 2 && pwdИзход:
Пример-6: Използване на команда за заспиване от командния ред
командата sleep се използва между две ехо команди в следния пример. Три времеви стойности ще бъдат показани след изпълнение на командата.
$време (изхвърлен 'Старт';сън 5;изхвърлен 'Край')Изход:
командата sleep е полезна команда, когато трябва да напишете bash скрипт с множество команди или задачи. Например, искате да изтеглите последователни файлове и следващото изтегляне не може да започне, преди да завършите предишното изтегляне. В този случай е по -добре да спите командата преди всяко изтегляне, за да изчакате фиксираното време.