iis服务器助手广告广告
返回顶部
首页 > 资讯 > 操作系统 >如何在 Linux 中查找一个命令或进程的执行时间
  • 620
分享到

如何在 Linux 中查找一个命令或进程的执行时间

linux查找命令linux查找进程linux执行时间 2022-06-04 22:06:35 620人浏览 独家记忆
摘要

在类 Unix 系统中,你可能知道一个命令或进程开始执行的时间,以及一个进程运行了多久。 但是,你如何知道这个命令或进程何时结束或者它完成运行所花费的总时长呢? 在类 Unix 系统中,这是非常容易的! 有一个专门为此设

在类 Unix 系统中,你可能知道一个命令或进程开始执行的时间,以及一个进程运行了多久。 但是,你如何知道这个命令或进程何时结束或者它完成运行所花费的总时长呢? 在类 Unix 系统中,这是非常容易的! 有一个专门为此设计的程序名叫 GNU time。 使用 time 程序,我们可以轻松地测量 linux 操作系统中命令或程序的总执行时间。 time 命令在大多数 Linux 发行版中都有预装,所以你不必去安装它。

在 Linux 中查找一个命令或进程的执行时间

要测量一个命令或程序的执行时间,运行:

$ /usr/bin/time -p ls

或者,

$ time ls

输出样例:


dir1 dir2 file1 file2 mcelog
real 0m0.007s
user 0m0.001s
sys 0m0.004s
$ time ls -a
. .bash_loGout dir1 file2 mcelog .sudo_as_admin_successful
.. .bashrc dir2 .gnupg .profile .wget-hsts
.bash_history .cache file1 .local .stack
real 0m0.008s
user 0m0.001s
sys 0m0.005s

以上命令显示出了 ls 命令的总执行时间。 你可以将 ls 替换为任何命令或进程,以查找总的执行时间。

输出详解:

  1. real —— 指的是命令或程序所花费的总时间
  2. user —— 指的是在用户模式下程序所花费的时间
  3. sys —— 指的是在内核模式下程序所花费的时间

我们也可以将命令限制为仅运行一段时间。参考如下教程了解更多细节:

在 Linux 中如何让一个命令运行特定的时长

time 与 /usr/bin/time

你可能注意到了, 我们在上面的例子中使用了两个命令 time 和 /usr/bin/time 。 所以,你可能会想知道他们的不同。

首先, 让我们使用 type 命令看看 time 命令到底是什么。对于那些我们不了解的 Linux 命令,type 命令用于查找相关命令的信息。 更多详细信息,请参阅本指南。


$ type -a time
time is a shell keyWord
time is /usr/bin/time

正如你在上面的输出中看到的一样,time 是两个东西:

  • 一个是 BASH shell 中内建的关键字
  • 一个是可执行文件,如 /usr/bin/time

由于 shell 关键字的优先级高于可执行文件,当你没有给出完整路径只运行 time 命令时,你运行的是 shell 内建的命令。 但是,当你运行 /usr/bin/time 时,你运行的是真正的 GNU time 命令。 因此,为了执行真正的命令你可能需要给出完整路径。

在大多数 shell 中如 BASH、ZSH、CSH、KSH、TCSH 等,内建的关键字 time 是可用的。 time 关键字的选项少于该可执行文件,你可以使用的唯一选项是 -p。

你现在知道了如何使用 time 命令查找给定命令或进程的总执行时间。 想进一步了解 GNU time 工具吗? 继续阅读吧!

关于 GNU time 程序的简要介绍

GNU time 程序运行带有给定参数的命令或程序,并在命令完成后将系统资源使用情况汇总到标准输出。 与 time 关键字不同,GNU time 程序不仅显示命令或进程的执行时间,还显示内存、I/O 和 IPC 调用等其他资源。

time 命令的语法是:


/usr/bin/time [options] command [arguments...]

上述语法中的 options 是指一组可以与 time 命令一起使用去执行特定功能的选项。 下面给出了可用的选项:

  • -f, –fORMat —— 使用此选项可以根据需求指定输出格式。
  • -p, –portability —— 使用简要的输出格式。
  • -o file, –output=FILE —— 将输出写到指定文件中而不是到标准输出。
  • -a, –append —— 将输出追加到文件中而不是覆盖它。
  • -v, –verbose —— 此选项显示 time 命令输出的详细信息。
  • –quiet – 此选项可以防止 time 命令报告程序的状态.

当不带任何选项使用 GNU time 命令时,你将看到以下输出。


$ /usr/bin/time wc /etc/hosts
9 28 273 /etc/hosts
0.00user 0.00system 0:00.00elapsed 66%CPU (0avgtext+0avgdata 2024maxresident)k
0inputs+0outputs (0major+73minor)pagefaults 0swaps

如果你用 shell 关键字 time 运行相同的命令, 输出会有一点儿不同:


$ time wc /etc/hosts
9 28 273 /etc/hosts
real 0m0.006s
user 0m0.001s
sys 0m0.004s

有时,你可能希望将系统资源使用情况输出到文件中而不是终端上。 为此, 你可以使用 -o 选项,如下所示。


$ /usr/bin/time -o file.txt ls
dir1 dir2 file1 file2 file.txt mcelog

正如你看到的,time 命令不会显示到终端上。因为我们将输出写到了file.txt 的文件中。 让我们看一下这个文件的内容:


$ cat file.txt
0.00user 0.00system 0:00.00elapsed 66%CPU (0avgtext+0avgdata 2512maxresident)k
0inputs+0outputs (0major+106minor)pagefaults 0swaps

当你使用 -o 选项时, 如果你没有一个名为 file.txt 的文件,它会创建一个并把输出写进去。如果文件存在,它会覆盖文件原来的内容。

你可以使用 -a 选项将输出追加到文件后面,而不是覆盖它的内容。

$ /usr/bin/time -a file.txt ls

-f 选项允许用户根据自己的喜好控制输出格式。 比如说,以下命令的输出仅显示用户,系统和总时间。


$ /usr/bin/time -f "\t%E real,\t%U user,\t%S sys" ls
dir1 dir2 file1 file2 mcelog
0:00.00 real, 0.00 user, 0.00 sys

请注意 shell 中内建的 time 命令并不具有HHreCGO GNU time 程序的所有功能。

有关 GNU time 程序的详细说明可以使用 man 命令来查看。

$ man time

想要了解有关 Bash 内建 time 关键字的更多信息,请运行:

$ help time

总结

以上所述是小编给大家介绍的在 Linux 中查找一个命令或进程的执行时间,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

--结束END--

本文标题: 如何在 Linux 中查找一个命令或进程的执行时间

本文链接: https://www.lsjlt.com/news/20033.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 怎么在Linux中查找一个命令或进程的执行时间
    这篇文章主要讲解了“怎么在Linux中查找一个命令或进程的执行时间”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么在Linux中查找一个命令或进程的执行时间”吧!在 Linux 中查找一个...
    99+
    2023-06-15
  • 如何在Linux命令行下杀死一个进程
    这篇文章主要介绍了如何在Linux命令行下杀死一个进程,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。定位进程杀死一个没有响应的进程的***个步骤是定位这个进程。我用来定位进程...
    99+
    2023-06-16
  • Linux中如何进行命令运行时间测试
    这篇文章主要为大家展示了“Linux中如何进行命令运行时间测试”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Linux中如何进行命令运行时间测试”这篇文章吧。1. time 命令基本用法time...
    99+
    2023-06-05
  • linux如何查看某个进程的运行时间
    小编给大家分享一下linux如何查看某个进程的运行时间,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!查看某个进程的运行时间可能,大部分同学只会使用 ps aux,其实可以通过 -o 参数,指定...
    99+
    2023-06-27
  • 如何在linux中定期执行命令
    如何在linux中定期执行命令?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。1.cron,crontab以及anacron的关系cron是大多数linux发行版都自带的守护...
    99+
    2023-06-09
  • 如何在shell中使用expect命令进行远程执行命令脚本
    如何在shell中使用expect命令进行远程执行命令脚本?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。expect是用来实现自动交互功能的工具之一,使用expect-send...
    99+
    2023-06-09
  • Linux在命令行下进行时间管理的方式
    本篇内容主要讲解“Linux在命令行下进行时间管理的方式”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Linux在命令行下进行时间管理的方式”吧!1.简单纯文本最直接管理你的待办事项的方式就是用...
    99+
    2023-06-05
  • 如何实现在一个时间段内进行间隔查询
    这篇文章主要介绍“如何实现在一个时间段内进行间隔查询”,在日常操作中,相信很多人在如何实现在一个时间段内进行间隔查询问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何实现在一...
    99+
    2024-04-02
  • linux如何查看进程运行时间
    在Linux系统中,可以使用`ps`命令来查看进程的运行时间。具体的命令格式为:```ps -p -o etime```其中,``...
    99+
    2023-09-13
    linux
  • 在windws下模拟Linux下可获取命令执行时间的time命令
    linux 下的 time 命令可以获取命令执行时间,Windows 下并没有类似的命令,我们可以自力更生写一个批处理,命名为time.BAT。 [plain] @echo off set /a StartMS=%tim...
    99+
    2023-06-01
    windws 命令执行时间 time命令 执行 time 命令 时间
  • linux如何停止正在执行的命令
    在Linux中,可以使用以下方法停止正在执行的命令:1. 使用Ctrl+C组合键:这是最常用的方法。在终端中按下Ctrl+C组合键,...
    99+
    2023-09-07
    linux
  • 怎么在linux 命令行中输出一个进度条
    本篇文章给大家分享的是有关怎么在linux 命令行中输出一个进度条,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。什么是Linux系统Linux是一种免费使用和自由传播的类UNI...
    99+
    2023-06-07
  • 怎么在 linux命令行中输出一个进度条
    怎么在 linux命令行中输出一个进度条?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。代码如下:<php for ($i = ...
    99+
    2023-06-13
  • db2如何查看一条sql的执行时间
    在DB2中,您可以使用以下命令来查看一条SQL的执行时间: SET QUERY ACCELERATION OFF; SET CURR...
    99+
    2024-04-09
    db2
  • linux下如何定时自动执行某个进程
    这篇文章给大家分享的是有关linux下如何定时自动执行某个进程的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。cron是linux下定时执行工具,可在完全无人工干预的情况下作业。可以用一下命令来手动开启或关闭该任务...
    99+
    2023-06-17
  • Linux系统如何查看进程运行时间
    这篇“Linux系统如何查看进程运行时间”文章,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要参考一下,对于“Linux系统如何查看进程运行时间”,小编整理了以下知识点,请大家跟着小编的步伐一步一步的慢慢理解,接下来...
    99+
    2023-06-28
  • 怎么在CentOS系统中查看命令执行的进度
    这期内容当中小编将会给大家带来有关怎么在CentOS系统中查看命令执行的进度,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。PV 全命为Pipe Viewer,利用它我们可以查看到命令执行的进度。# wge...
    99+
    2023-06-07
  • 如何在Zabbix中配置远程命令执行
    在Zabbix中配置远程命令执行可以通过以下步骤实现: 登录到Zabbix的Web界面,在主菜单中选择“Administrati...
    99+
    2024-03-13
    Zabbix
  • linux中如何用Grep命令查找多个字符串
    要在Linux中使用Grep命令查找多个字符串,可以使用Grep命令的“-e”选项来指定多个字符串。例如,要查找包含字符串“appl...
    99+
    2024-04-02
  • 如何在很短的间隔/同时进行多个查询
    今日不肯埋头,明日何以抬头!每日一句努力自己的话哈哈~哈喽,今天我将给大家带来一篇《如何在很短的间隔/同时进行多个查询》,主要内容是讲解等等,感兴趣的朋友可以收藏或者有更好的建议在评论提出,我都会认...
    99+
    2024-04-05
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作