xml地图|网站地图|网站标签 [设为首页] [加入收藏]

您的位置:澳门赌搏网站大全 > 计算机网络 > date、sleep和usleep命令

date、sleep和usleep命令

发布时间:2019-11-24 06:14编辑:计算机网络浏览(151)

    bash&shell连串随笔:http://www.cnblogs.com/f-ck-need-u/p/7048359.html**

    bash&shell种类随笔:http://www.cnblogs.com/f-ck-need-u/p/7048359.html**



    1.1 date命令

    date用于获取和设置操作系统的时刻,还会有hwclock是收获硬件时间。

    date有个选用"-d",可以用来描述获取哪一天的年月,描述的艺术丰硕开放,但无法应用"now"关键字,别的的如3天前"3 days ago",3天后"3 days",昨日"yesterday",下一周风姿洒脱"next Monday"等等。

    Linux中装置date命令的显得格式:date [ format],其中" "表示之前方的小运中获取当中的格式部分,如date -d "yesterday" "%Y"获取的是几日前的年度部分。

    format格式如下所示:标金黄的较常用。

     

    符号

    意义

    描述

    %y

    年(后两位)

    last two digits of year (00..99)

    %Y

    year

    %m

    month (01..12)

     

     

     

    %j

    年中天

    day of year (001..366)

    %d

    月中天

    day of month (如01)

    %w

    周中天

    day of week (0..6); 0 is Sunday

    %u

    周中天

    day of week (1..7); 1 is Monday

    %U

    年中周(00-53)

    week number of year with Sunday as first day

    %W

    年中周(00-53)

    week number of year with Monday as first day

    %H

    时(24时制)

    hour (00..23)

    %I

    时(12时制)

    hour (01..12)

    %M

    minute (00..59)

    %S

    second (00..60)

    %N

    纳秒

    ns of current minute

    %s

    从一九七零-01-01到当下光阴的秒数总量

    完整

    格式

    %T

    完全时间

    time; same as %H:%M:%S

    %D

    日期完全格式

    date; same as %m/%d/%y

    %F

    日期完整格式

    date; same as %Y-%m-%d

    特殊

    格式

    %n

    换行

    a newline

    %t

    tab键

    a tab

    [root@xuexi ~]# date  %F
    2016-09-25
    
    [root@xuexi ~]# date  "%F %T"     # 有空格需要使用双引号或引号来分隔
    2016-09-25 10:48:34
    
    [root@xuexi ~]# date  "%Y-%m-%d %H:%M:%S"
    2016-09-25 10:47:49
    

    动用date命令能够估测计算时间差。比如:

    # 以下3个命令等价
    date -d "3 days ago"  %F
    date -d "-3 days"  %F
    date -d "now  - 3 days"  %F
    

    全球十大信誉网投平台,再比方,给定八个时日,总结它的今日,后几天。

    # 以下两条命令等价
    date -d "2018-02-19 3 days ago"  %F
    date -d "2018-02-19 - 3 days"  %F
    

    给定二个日期,计算该日期所在星期的星期五是几月几号。举例,2018-05-12是周六,那么周三是2018-05-07。

    #!/bin/bash
    src_date="2018-05-12"
    src_weekday=`date -d $src_date  %w`
    Mon_date=`date -d "$src_date - $(( src_weekday - 1 )) days"  %F`
    echo $Mon_date
    

    date命令仍为能够总计延迟时间(五个时间点的岁月差)。假如要计算正确度为秒级的推迟,可径直行使%s总括,但只要要总计皮秒级、阿秒级以致是飞秒级的时刻差,则供给对date的结果开展风度翩翩番构思和转移。以下是秒级时间差计算格局,微秒级总括方法见:总计皮秒级、阿秒级时间差。

    #!/bin/bash
    start_time=$(date  "%s")
    find / -type f -name "*.db" &>/dev/null
    end_time=$(date  "%s")
    time_diff=$(( start_time - end_time ))
    echo $time_diff
    

    在写while循环的时候,开掘了贰个标题,在while循环内部对变量赋值、定义变量、数组定义等等情形,在循环外面失效。

    1.2 sleep和usleep

    在shell中常使用sleep命令钦定休眠时间,休眠的意味表示让眼下历程走入眠眠状态。举例:

    sleep 5
    

    sleep暗许的蛰伏单位为秒,因而地方表示休眠5分钟。若是要休眠阿秒级、飞秒级,则足以应用小数。举例:

    sleep 0.5
    

    代表休眠半分钟。

    别的,还应该有非常的微秒级的休眠命令usleep。比方:

    usleep 1000
    

    代表休眠1000微秒,即1阿秒。

    一个简单易行的测量检验脚本如下:

    #!/bin/bash
    echo "abc xyz" | while read line
    do
        new_var=$line
    done
    echo new_var is null: $new_var?
    

    进行理并了结果印证,$new_var的结果是空值。在google上查了查,才开采标题出在管道上。加上自身的下结论,特分享三个利用while循环时的圈套。

    先看看上边包车型地铁内容。

    while循环的写法有有些种,它的语法结构为:

    while test_cmd_list; do cmd_list; done

    但更有的时候地,while循环更加多地用来读取标准输入的剧情来落到实处循环。有以下三种写法:

    澳门赌搏网站大全,写法意气风发:使用管道传递内容,那是用的最多、但却最烂的写法

    echo "abc xyz" | while read line   

    do 

        ...

    done

    写法二:

    while read line

    do

        ...

    done <<< "abc xyz"

    写法三:从文件中读取内容

    date、sleep和usleep命令。while read line

    do

        ...

    done </path/filename

    主意四:采取进度替换

    while read var

    do

        ...

    done < <(cmd_list)           

    艺术五:校勘专门的职业输入

    exec <filename

    while read var

    do

        ...

    done        

    纵然写法有四种,但它们并不等价。

    本文由澳门赌搏网站大全发布于计算机网络,转载请注明出处:date、sleep和usleep命令

    关键词: www.4355.com