我只是想测量程序从开始到结束所花费的时间。
在 UNIX 中 - 我可以使用该time
命令。有没有办法在 MS DOS 或 FreeDOS 中执行此操作?
答案1
没有。但你可以用以下命令模拟类似操作:
echo.|time
your_command
echo.|time
并计算两次时间之间的差值
像这样的一个非常典型的 C 程序可以帮助您:
#include <stdio.h>
#include <time.h>
int main(int argc, char** argv)
{
time_t a, b;
a=time(NULL);
system(argv[1]);
b=time(NULL);
printf("%d\n", b-a);
}
答案2
4DOS 是一个类似于命令,但包含扩展,例如能够滚动浏览以前的命令、弹出帮助和其他有用的功能。4DOS 是由 JP Software 的 Rex Conn 和 Tom Rawson 编写的。
这是最著名的替代外壳它比 COMMAND.COM 好很多,并且有一个TIMER
命令可以满足你的目的
该
TIMER
命令允许您对事件进行计时。以下行还显示了 4DOS 在一行上接受多个命令的能力,这些命令由插入符号 [^
] 分隔。它启动计时器,运行巡回赛2.BTM文件创建三个演示文件,删除这三个文件,然后停止计时器并显示整个操作所用的时间。输入此命令可在计算机上对整个序列进行计时:c:\4dos> timer ^ tour2 ^ del filel file2 file3 ^ timer Timer 1 on: 11:10:01 Please wait ... File creation completed Deleting c:\4dos\file1 Deleting c:\4dos\file2 Deleting c:\4dos\file3 3 file(s) deleted Timer 1 off: 11:10:06 elapsed: 0:00:05.11
jpsoftware :: 4DOS 参考手册
[第 37 页 - 第 3 章 / 4DOS 导览 # 其他命令] —文本转录便于搜索,但由于 OCR 而略有错误
(替代链接)
答案3
我发现RUNTIME.EXE
软件包中有一个名为 on the FreeDOS 1.3 Bonus CD 的程序RUNTIME.ZIP
。它允许测量程序运行所需的时间。它与 unix 的 time 命令非常相似。