要知道的内容
- 使用睡眠命令加一个时间;年代=秒,米=分钟,h=小时,或d=天(例如,睡5个暂停脚本5秒)。
- 用人的睡眠更多信息。
本文介绍如何使用Linux Sleep命令暂停Bash脚本,以及其他一些事情。就其本身而言,sleep命令并不是非常有用。但是,作为脚本的一部分,它可以以多种方式使用。例如,在重试第一次失败的命令之前,可以使用它暂停脚本。
使用睡眠命令的示例
想象一下,您有一个脚本处理从另一个服务器下载的文件。脚本不应该启动复制过程,直到所有文件完成下载。下载过程由在您之前运行的单独脚本执行。
复制文件的脚本可能包含一个循环,用于测试是否所有文件都已下载(它是通过在开始复制过程之前检查是否找到50个文件来实现的)。
没有必要不断地进行脚本测试,因为这会占用处理器时间。相反,您可以在每次测试之间暂停几分钟,然后再试一次。在这种情况下,sleep命令是完美的。
如何使用Sleep命令
要使用Linux Sleep命令,请在终端窗口中输入以下内容:
睡5个
上面的命令使终端暂停在返回命令行之前5秒钟。
sleep命令需要关键字睡眠,然后是你要暂停的数字和度量单位。
您可以在几秒钟,分钟,小时或几天内指定延迟。
- 年代:秒
- 米:分钟
- h: 小时
- d:天
在暂停脚本时,使用Cron作业以定期的时间间隔运行脚本,而不是在后台运行几天的脚本。
cron作业是一个Linux命令或脚本,您可以安排它在指定的时间或日期运行。这对于长时间重复执行任务很有用。
用于sleep命令间隔的数字不必是一个整数。也可以使用浮点数。
例如,以下语法包括一秒钟的一小部分:
睡眠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。
如果没有sleep命令,脚本就会放大,消息会显示得太快。
如何使用睡眠命令交换机
sleep命令只有几个开关。
的- 帮助Switch显示了sleep命令的帮助文件。你可以通过使用man命令来达到同样的目的,如下所示:
人的睡眠
的——版本交换机显示系统上安装的睡眠命令的版本。
--version交换机返回的信息如下:
- 版本号
- 版权信息
- 许可证
- 作者
使用Sleep暂停终端命令
睡眠命令的另一个良好用途是暂停您键入终端窗口中的命令。
如果愿意,可以在一行中输入两个命令,等待第一个命令完成后再输入第二个命令。
然而,一种更快的方法是在一行中输入两个命令,在每个命令之间使用sleep命令:
$ CD /mydirectory/ && sleep 3 && ls
此命令如何运作:
- 的CD / MyDirectory /命令更改目录。
- 的睡眠3命令等待三秒钟以完成CD命令。
- 的LS.命令执行并显示目录内容。
对于这样一个简单的示例,sleep命令只节省了一点时间。但是,如果您有一个很长的命令列表,那么在一行中输入命令的能力可以节省时间。