#include #include #define _POSIX_C_SOURCE 200809L int main(int argc, char **argv) { if (argc != 3) return 2; struct stat f1; if (stat(argv[1], &f1)) return 2; struct stat f2; if (stat(argv[2], &f2)) return 2; printf("%s is ", argv[1]); if (f2.st_mtime == f1.st_mtime) { if (f2.st_mtim.tv_nsec >= f1.st_mtim.tv_nsec) printf("not "); } else if (f2.st_mtime > f1.st_mtime) printf("not "); printf("newer than %s\n", argv[2]); return 0; }