zoukankan      html  css  js  c++  java
  • time和/usr/bin/time

    time和/usr/bin/time

    当我在bash中敲入time命令时,运行的其实是bash内置的time命令:

    $ time
    
    real    0m0.000s
    user    0m0.000s
    sys     0m0.000s
    $ type time
    time is a shell keyword
    

    这个time命令有一个-p选项,表示以posix格式输出:

    $ time -p
    real 0.00
    user 0.00
    sys 0.00
    

    除此以外,还有一个time命令。不过我当前的机器并没有安装这个程序:

    $ which time
    which: no time in (/home/xiaonan/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/bin:/opt/cuda/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl)
    

    安装一下,对比bash内置的time命令:

    $ sudo pacman -S time
    $ type time
    time is a shell keyword
    $ which time
    /usr/bin/time
    

    单独运行“/usr/bin/time -p”,只会输出命令的帮助选项:

    $ /usr/bin/time -p
    Usage: /usr/bin/time [-apvV] [-f format] [-o file] [--append] [--verbose]
           [--portability] [--format=format] [--output=file] [--version]
           [--help] command [arg...]
    

    需要加上具体的需要度量时间的命令:

    $ /usr/bin/time -p echo
    
    real 0.00
    user 0.00
    sys 0.00
    

    此外也可以给出命令执行的详细信息:

    $ /usr/bin/time -v echo
    
        Command being timed: "echo"
        User time (seconds): 0.00
        System time (seconds): 0.00
        Percent of CPU this job got: 0%
        Elapsed (wall clock) time (h:mm:ss or m:ss): 0:00.00
        Average shared text size (kbytes): 0
        Average unshared data size (kbytes): 0
        Average stack size (kbytes): 0
        Average total size (kbytes): 0
        Maximum resident set size (kbytes): 1536
        Average resident set size (kbytes): 0
        Major (requiring I/O) page faults: 0
        Minor (reclaiming a frame) page faults: 70
        Voluntary context switches: 1
        Involuntary context switches: 1
        Swaps: 0
        File system inputs: 0
        File system outputs: 0
        Socket messages sent: 0
        Socket messages received: 0
        Signals delivered: 0
        Page size (bytes): 4096
        Exit status: 0
    

    参考资料:
    /usr/bin/time: not the command you think you know

  • 相关阅读:
    别人走的路--2
    win7下80端口被(Pid=4)占用的解决方法
    实习第一天原来是配置环境
    api接口大全
    java计算两个日期之间相隔的天数
    【转】overload与override的区别
    Overload和Override的区别?
    浅析Java中的final关键字
    JAVA中的finalize()方法
    封装
  • 原文地址:https://www.cnblogs.com/kakaisgood/p/12718681.html
Copyright © 2011-2022 走看看