在本小节中,将了解如何通过使用不同的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
命令。