如何使用sleep命令开关

sleep 命令只有几个开关。

--help 开关显示 sleep 命令的帮助文件。
我们可以通过使用 man 命令来实现相同的目的,如下所示:

man sleep

--version 开关显示系统上安装的 sleep 命令的版本。

--version 开关返回的信息如下:

  • 版本号
  • 版权详情
  • 许可证
  • 作者

使用sleep暂停终端命令

sleep 命令的另一个很好的用途是暂停我们在终端窗口中键入的命令。

如果需要,我们可以连续键入两个命令,等待第一个命令完成后再键入第二个命令。

但是,更快的方法是在一行中键入两个命令,在每个命令之间输入一个 sleep 命令:

$ cd /mydirectory/ && sleep 3 && ls

此命令的工作原理:

  • cd /mydirectory/ 命令更改目录。
  • sleep 3 命令等待 cd 命令完成三秒钟。
  • ls 命令执行并显示目录内容。

对于像这样的简单示例, sleep 命令只会节省一点时间。
但是,如果我们有很长的命令列表,则在一行中键入命令的功能可以节省时间。

如何使用sleep命令

要使用 Linux sleep 命令,请在终端窗口中输入以下内容:

sleep 5s

上述命令使终端在返回命令行之前暂停 5 秒。

sleep 命令需要关键字 sleep ,后跟要暂停的数字和度量单位。

我们可以以秒、分钟、小时或者天为单位指定延迟。

  • s : 秒
  • m :分钟
  • h : 小时
  • d : 天

当需要暂停脚本数天时,请使用 cron 作业定期运行脚本,而不是让脚本在后台运行数天。

cron 作业是一个 Linux 命令或者脚本,我们可以安排它在设定的时间或者日期运行。
这些对于长时间重复任务很有用。

睡眠命令间隔的数字不必是整数。
我们还可以使用浮点数。

例如,以下语法包括几分之一秒:

sleep 3.5s

使用 Sleep 命令的示例

以下脚本显示了如何使用 sleep 命令制作基于终端的倒计时时钟:

#!/bin/bash
x=10
while [ $x -gt 0 ]
do
sleep 1s
clear
echo "$x seconds until blast off"
x=$(( $x - 1 ))
done

下面是这个脚本的工作原理:

  • 该脚本将变量 x 设置为 10.
  • 当 x 的值大于零时,while 循环继续迭代。
  • sleep 命令每次循环时都会暂停脚本 1 秒。
  • 脚本的其余部分在每次迭代时清除屏幕,显示消息“x 秒直到爆炸”,并从 x 的值中减去 1.
如何使用 Linux Sleep 命令暂停 BASH 脚本

使用 Sleep 命令的示例

假设我们有一个脚本来处理从另一台服务器下载的文件。
在所有文件完成下载之前,脚本不应开始复制过程。
下载过程由在我们之前运行的单独脚本执行。

复制文件的脚本可能包含一个循环来测试是否所有文件都已下载(它通过在开始复制过程之前检查是否找到 50 个文件来完成此操作)。

不断进行脚本测试毫无意义,因为这会占用处理器时间。
相反,我们可能会在每次测试之间暂停几分钟,然后再试一次。
sleep 命令在这种情况下是完美的。

日期:2020-07-15 11:16:38 来源:oir作者:oir