linux 暂停一段时间,sleep命令_Linux sleep命令:让程序暂停或休眠一段时间

linux 暂停一段时间,sleep命令_Linux sleep命令:让程序暂停或休眠一段时间sleep命令,让睡眠变得有学问。本文将对sleep命令进行详细地介绍,一起来看看sleep命令如何让睡眠变得有学问。先让程序睡上30秒从字面意思看,想必你已经猜出来sleep命令的作用啦。简单地说,sleep就是让程序稍稍休息一下,然后,再继续工作(休息是为了更好地工作……)。我们让Shell程序小憩30秒:#睡眠30秒[roc@roclinux~]$sleep…

大家好,又见面了,我是你们的朋友全栈君。

sleep 命令,让睡眠变得有学问。本文将对 sleep 命令进行详细地介绍,一起来看看 sleep 命令如何让睡眠变得有学问。

先让程序睡上 30 秒从字面意思看,想必你已经猜出来 sleep 命令的作用啦。简单地说,sleep 就是让程序稍稍休息一下,然后,再继续工作(休息是为了更好地工作……)。

我们让 Shell 程序小憩 30 秒:#睡眠30秒[roc@roclinux ~]$ sleep 30s #让date命令来监督, 看看是不是真的睡了30秒[roc@roclinux ~]$ date;sleep 30s; dateThu Feb 25 08:25:17 CST 2016Thu Feb 25 08:25:47 CST 2016

睡眠时间个性化sleep 命令虽然简单,但我们可以对它进行个性化定制,让它变得更好玩一些。

一般来说,sleep 命令后面跟的数值是用来表示时间的,是时间就要有单位,如果我们不指定单位的话,它默认的单位是什么呢?[roc@roclinux ~]$ date; sleep 1; dateThu Feb 25 09:55:47 CST 2016Thu Feb 25 09:55:48 CST 2016从这个示例来看,默认的单位就是秒啦,和指定单位 s 有同等的效果。

有秒的话,还应该有分钟和小时才对,那这些单位在 sleep 中如何表示呢?s:表示秒m:表示分钟h:表示小时d:表示天

比如,如果想让 Shell 程序睡眠 1 分钟,应该如何操作呢?[roc@roclinux ~]$ date; sleep 1m; dateThu Feb 25 10:00:43 CST 2016Thu Feb 25 10:01:43 CST 2016

那如果想让 shell 程序睡眠 1 小时的话,直接把单位换成 h 就可以了。如果我们想让 shell 程序睡眠 1 分 40 秒,又该怎么操作呢?1 分=60 秒,1 分 40 秒=100 秒,可以直接让计算机睡眠 100 秒。[roc@roclinux ~]$ date; sleep 100; dateThu Feb 25 10:12:28 CST 2016Thu Feb 25 10:14:08 CST 2016

其实呢,sleep 比你想象得还要体贴,你可以直接这样输入:#注意: 分钟和秒之间一定要有空格哦[roc@roclinux ~]$ date; sleep 1m 40s; dateThu Feb 25 10:17:04 CST 2016Thu Feb 25 10:18:44 CST 2016这种方法简单、直接,节省了我们不少的思考时间。

在 sleep 中最大的单位是 d(天),如果想表示更长的时间,比如周、月、年的话,那么你只能把它们转换成天来表示了。# 这样, Shell程序乖乖地沉睡 “一周2小时5分4秒”[roc@roclinux ~]$ date; sleep 7d 2h 5m 4s; dateThu Feb 25 10:17:04 CST 2016Thu Feb 25 10:18:44 CST 2016

毫秒级睡眠时间可不可以sleep 命令的默认时间单位是秒,但对于高速运行的程序来说,“秒”还是显得太长了。那 sleep 能不能实现毫秒级的睡眠呢?答案是可以的,例如,我们让 Shell 程序睡眠 3 毫秒:[roc@roclinux ~]$ time sleep 0.003 real 0m0.004suser 0m0.000ssys 0m0.001s

time 可以通过浮点数的方式实现毫秒级的睡眠,但这里有一点需要注意,即睡眠时间的精度。sleep 命令只能保证 10ms 级别的精度控制,对于小于 10ms 的睡眠时间是存在误差的。实际应用中,如果你对时间精度要求特别高的话,sleep 或许不是一个正确的选择,还是请考虑其他方法吧。

sleep 的过程中 CPU 是否被占用默认情况下,sleep 的进程是不占用 CPU 时间的,我们可以通过实验来说明这个问题:[roc@roclinux ~]$ \time sleep 10.00user 0.00system 0:01.00elapsed 0%CPU (0avgtext+0avgdata 2560maxresident)k0inputs+0outputs (0major+200minor)pagefaults 0swaps

看到了吗?0.00user、0.00system、0%CPU 这三个输出项都表明 sleep 是不会耗费 CPU 的计算资源的。

注意:上面使用了\time命令,它指代的是 /usr/bin/time,而不是 Shell 内置的 time 命令。/usr/bin/time 命令可以显示更多的信息,而 Shell 内置的命令做不到这一点。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/160368.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • awvs使用方法_一般人游50米要多久

    awvs使用方法_一般人游50米要多久Awvs的是一款非常好用的web漏洞扫描工具,他的扫描速度比较快,可以自己选择扫描速度,比较灵活。Awvs分为老的版本和新版本,下面我介绍的是新版本的功能和用法。功能介绍如下:仪表盘(监视器)功能,添加目标功能,漏洞排序功能,扫描功能,发现功能,用户功能,扫描配置功能,网络扫描功能,追踪器功能,防火墙设置,邮件设置,引擎,时间排除功能,代理功能,常规设置主要使用的功能是前面的6个,后面的根据个人的需要进行配置详细介绍如下:Dashboard功能:翻译意思仪表盘(监视器),可以对扫描对扫描

    2022年9月22日
  • matlabinterp1函数_matlab中subs

    matlabinterp1函数_matlab中subs今天通过几个实例对matlab中的interp1插值函数进行了深入的理解,下面通过几组数据进行说明。插值法:插值法又称“内插法”,是利用函数f(x)在某区间中已知的若干点的函数值,作出适当的特定函

    2022年8月6日
  • 决策树原理及Python代码实现

    决策树原理及Python代码实现决策树其实就是按节点分类数据集的一种方法。在本文中,我将讨论数学上如何使用信息论划分数据集,并编写代码构建决策树。创建决策树进行分类的流程如下:(1)创建数据集(2)计算数据集的信息熵(3)遍历所有特征,选择信息熵最小的特征,即为最好的分类特征(4)根据上一步得到的分类特征分割数据集,并将该特征从列表中移除(5)执行递归函数,返回第三

    2022年9月8日
  • 详解EditText输入监听TextWatcher「建议收藏」

    日常开发中,我们可能会遇到需要监听EditText输入,比如判断输入是否为电话号码,获取输入的数据长度来限定字数等。这就需要监听EditText的输入状态。EditText使用TextWatcher实现类似按钮监听事件:使用方法效果图:MainActivity.javapublicclassMainActivityextendsAppCompatActivity{priv

    2022年4月16日
  • 【通俗易懂】机器学习中 L1 和 L2 正则化的直观解释[通俗易懂]

    【通俗易懂】机器学习中 L1 和 L2 正则化的直观解释[通俗易懂]L=Ein+λ∑j|wj|L=Ein+λ∑j|wj|L=E_{in}+\lambda\sum_j|w_j|∑jw2j≤C∑jwj2≤C\sum_jw_j^2\leqC∇Ein∇Ein\nablaE_in∇Ein+λw=0∇Ein+λw=0\nablaE_{in}+\lambdaw=0∂∂w(12λw2)=λw∂∂w(12λw2)=λw\frac{\partia…

    2022年7月13日
  • 程序员必知的8大排序(三)——-冒泡排序,快速排序(java实现)

    程序员必知的8大排序(三)——-冒泡排序,快速排序(java实现)接上一篇:程序员必知的8大排序(二)——-简单选择排序,堆排序(java实现) 5.冒泡排序(1)基本思想:在要排序的一组数中,对当前还未排好序的范围内的全部数,自上而下对相邻的两个数依次进行比较和调整,让较大的数往下沉,较小的往上冒。即:每当两相邻的数比较后发现它们的排序与排序要求相反时,就将它们互换。(2)实例:(3)用java实现publicclass

    2022年6月22日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号