// // stampit -- Display start, end, elapsed time of given command line. // // 21-Feb-2011 Tom Van Baak (tvb) www.LeapSecond.com/tools // #include #include #include #include int main (int argc, char *argv[]) { long t0, t1; char *cmd, buf[1000]; if (argc < 2) { fprintf(stderr, "Usage: %s [command to be timed]\n", argv[0]); return 1; } cmd = buf; while (argc > 1) { cmd += sprintf(cmd, " %s", argv[1]); argc -= 1; argv += 1; } cmd = buf + 1; { time_t t; time(&t); fprintf(stderr, "%.24s start\n", ctime(&t)); } t0 = clock(); system(cmd); t1 = clock(); { time_t t; time(&t); fprintf(stderr, "%.24s end\n", ctime(&t)); } fprintf(stderr, " %.3lf seconds (%s)\n", (double) (t1 - t0) / CLOCKS_PER_SEC, cmd); return 0; }