在本小節中,將瞭解如何通過使用不同的bash腳本來使用sleep命令。Sleep是一個命令行實用程式,可在指定的時間中暫停調用過程。換句話說,Bash sleep命令用於在指定的時間段內插入延遲或暫停執行。
當程式員出於特定目的需要暫停執行任何命令時,可以將該命令與特定時間值一起使用。可以按秒(s),分鐘(m),小時(h)和天(d)設置延遲量。在bash shell腳本中使用此命令時特別有用。
sleep命令語法
以下是Bash中sleep命令的語法:
sleep number[suffix]
可以使用正整數或小數作為時間值。尾碼是可選部分。可以將以下任意一項用作尾碼:
s
- 表示秒m
- 表示分鐘h
- 表示小時d
- 表示天
注意:如果沒有尾碼,則數字以秒為單位(默認情況下)。
如果指定了兩個或多個參數,則總的時間將被視為等於值之和的時間。
以下是一些簡單的示例,演示了如何使用sleep
命令:
睡眠
9
秒鐘,使用:sleep 9 或 sleep 9s
睡眠
0.5
秒鐘,使用:sleep 0.5 或 sleep 0.5s
睡眠2分30秒,使用:
sleep 2m 30s
睡眠8小時,使用:
sleep 8h
睡眠2天9小時5分55秒,使用:
sleep 2d 9h 5m 55s
Bash腳本示例
下麵將在Bash中演示如何使用sleep命令。
Bash腳本:
#!/bin/bash
# start time
date +"%H:%M:%S"
echo "wait for 9 seconds"
# sleep for 9 seconds
sleep 9s
# you can also use "sleep 9" in place of "sleep 9s" because if there is no suffix, it is considered as "seconds".
# end time
date +"%H:%M:%S"
echo "Task Completed"
將上面示例代碼保存到檔:bash-sleep.sh,並執行得到以下結果:
腳本如何工作?
當我們運行腳本時,它將以HH:MM:SS
格式列印當前時間。然後,echo
命令將執行並顯示消息“wait for 9 seconds”
。然後,sleep
命令將執行並將腳本暫停9秒鐘。經過指定的時間段後,腳本的下一行將再次列印當前時間。最後,echo
命令將顯示消息“Task Completed”
。
同樣,可以指定在幾分鐘,幾小時和幾天內運行sleep
命令。