unix - 使用/usr/bin/time 时如何忽略程序的输出?

标签 unix shell time profiling io-redirection

我想知道一个程序运行了多长时间,所以我尝试了“/usr/bin/time ./program >/dev/null”。
但很快我发现它显示程序的输出到标准错误。然后我尝试了“/usr/bin/time ./program >/dev/null 2>&1”,但是没有出现/usr/bin/time 的输出。
所以我的问题是,如何忽略程序的输出,并保留时间的输出。

非常感谢。

最佳答案

使用 -o标志将输出发送到其他地方然后 stderr .例如,如果您仍然希望它出现在屏幕上:

/usr/bin/time -o /dev/tty ./program >/dev/null 2>&1

或者,如果您想在 stdout 上输出非常糟糕:
/usr/bin/time sh -c './program >/dev/null 2>&1'

或类似。但是,现在您还要测量 shell 启动进程的时间,这可能是也可能不是问题。

关于unix - 使用/usr/bin/time 时如何忽略程序的输出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4033327/

相关文章:

linux - grep 搜索模式中间的上限

unix - 在 UNIX 中递归定位最近更新的文件

unix - UNIX 时间戳中的最后一个数字是什么意思?

bash - 使用 sed 插入单引号

linux - 用名称杀死随机进程

python - 生成对应于循环值的矩阵

android - Toast.LENGTH_LONG 和 Toast.LENGTH_SHORT 的值是多少?

java - 使用 ActiveAndroid 的带有 DATE 变量的 Where 子句

linux - 查找命令在 centOS 中没有按预期工作

unix - 如何在 SFTP 中传输二进制文件?