如何使用Linux Sleep命令暂停Bash脚本

想要降低BASH脚本的速度吗?使用sleep命令

要知道的内容

  • 使用睡眠命令加一个时间;年代分钟h小时,或d(例如,睡5个暂停脚本5秒)。
  • 人的睡眠更多信息。

本文介绍如何使用Linux Sleep命令暂停Bash脚本,以及其他一些事情。就其本身而言,sleep命令并不是非常有用。但是,作为脚本的一部分,它可以以多种方式使用。例如,在重试第一次失败的命令之前,可以使用它暂停脚本。

运行Linux睡眠命令的人在笔记本电脑上20秒
凯莉·麦基恩/ Lifewir乐动体育赞助e

使用睡眠命令的示例

想象一下,您有一个脚本处理从另一个服务器下载的文件。脚本不应该启动复制过程,直到所有文件完成下载。下载过程由在您之前运行的单独脚本执行。

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

没有必要不断地进行脚本测试,因为这会占用处理器时间。相反,您可以在每次测试之间暂停几分钟,然后再试一次。在这种情况下,sleep命令是完美的。

如何使用Sleep命令

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

睡5个

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

sleep命令需要关键字睡眠然后是你要暂停的数字和度量单位。

您可以在几秒钟,分钟,小时或几天内指定延迟。

  • 年代:秒
  • :分钟
  • h: 小时
  • d:天

在暂停脚本时,使用Cron作业以定期的时间间隔运行脚本,而不是在后台运行几天的脚本。

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

用于sleep命令间隔的数字不必是一个整数。也可以使用浮点数。

Linux睡眠命令

例如,以下语法包括一秒钟的一小部分:

睡眠3.5s.

使用睡眠命令的示例

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

#!/bin/bash
x = 10.
而[$x -gt 0]

睡1S.
清除
Echo "$x seconds until blast off"
X =$(($ X - 1)))
完毕

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

  • 该脚本将变量x设置为10。
  • 当x的值大于0时,while循环继续迭代。
  • 睡眠命令每次循环周围每次都会暂停脚本1秒钟。
  • 脚本的其余部分在每次迭代时清除屏幕,显示“离发射还有x秒”的消息,并从x的值中减去1。
Linux睡在脚本中

如果没有sleep命令,脚本就会放大,消息会显示得太快。

如何使用睡眠命令交换机

sleep命令只有几个开关。

- 帮助Switch显示了sleep命令的帮助文件。你可以通过使用man命令来达到同样的目的,如下所示:

人的睡眠

——版本交换机显示系统上安装的睡眠命令的版本。

--version交换机返回的信息如下:

  • 版本号
  • 版权信息
  • 许可证
  • 作者

使用Sleep暂停终端命令

睡眠命令的另一个良好用途是暂停您键入终端窗口中的命令。

如果愿意,可以在一行中输入两个命令,等待第一个命令完成后再输入第二个命令。

然而,一种更快的方法是在一行中输入两个命令,在每个命令之间使用sleep命令:

$ CD /mydirectory/ && sleep 3 && ls

此命令如何运作:

  • CD / MyDirectory /命令更改目录。
  • 睡眠3命令等待三秒钟以完成CD命令。
  • LS.命令执行并显示目录内容。

对于这样一个简单的示例,sleep命令只节省了一点时间。但是,如果您有一个很长的命令列表,那么在一行中输入命令的能力可以节省时间。

此页面有用吗?