将“时间”命令输出重定向到 Cygwin 中的文件

将“时间”命令输出重定向到 Cygwin 中的文件

我正在尝试将 Cygwin 中“time”命令的结果重定向到一个文件,但我不知道该怎么做。我试过了time app.exe > /file/path/file.txt,,等等。坦率地说,我能想到的所有办法都试过了(time app.exe) > /file/path/file.txttime > /file/path/file.txt app.exe

以上所有内容要么将 app.exe(这只是一个打印几个字符的愚蠢应用程序)输出到 file.txt,而不是运行所花费的时间。

也尝试使用 -o,但是bash: -o command not found

那么,我该怎么做?使用完整路径有问题吗?

答案1

这里有两个问题,一个是time打印到 STDERR(标准错误)而不是 STDOUT(标准输出),因此您需要重定向它。这可以使用以下符号完成:2>。另一个问题是time运行另一个命令,您需要将两者分开。

解决方案是使用子 shell ( ),你已经有了它几乎正确的:

(time app.exe ) 2> \file\path\file.txt

或者

time ( app.exe ) 2> \file\path\file.txt

相关内容