Someone
public text v1 · immutable/*
Auto archive script Written by Kakashi
*/
#include <dirent.h>
#include <time.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
main()
{
struct dirent **namelist, **releaselist;
struct stat *buf;
size_t seconds, now;
int n, i;
char path[128];
char releasepath[128];
n = scandir("/gl2/site", &namelist, 0, alphasort);
if (n < 0)
perror("scandir");
else
{
while(n--)
{
//Excluding sections that doesnt need any checking
if(strcmp(namelist[n]->d_name, "archive") == 0)
continue;
else if (strcmp(namelist[n]->d_name, "groups") == 0)
continue;
else if (strcmp(namelist[n]->d_name, "requests") == 0)
continue;
else if (strncmp(namelist[n]->d_name, "Last_PRE", 8) == 0)
continue;
else if (strncmp(namelist[n]->d_name, "Latest_Race", 11) == 0)
continue;
else if (strcmp(namelist[n]->d_name, "..") == 0)
continue;
else if (strcmp(namelist[n]->d_name, ".") == 0)
continue;
printf("%s\n", namelist[n]->d_name);
//Starting Section Seach
sprintf(path, "/gl2/site/%s", namelist[n]->d_name);
free(namelist[n]);
i = 0;
i = scandir(path, &releaselist, 0, alphasort);
if (i < 0)
perror("scandir");
else
{
while(i--)
{
//Excluding the stuff we dont need
if (strstr(releaselist[i]->d_name, "incomplete") != 0)
continue;
else if (strcmp(releaselist[i]->d_name, "..") == 0)
continue;
else if (strcmp(releaselist[i]->d_name, ".") == 0)
continue;
sprintf(releasepath,"%s/%s", path, releaselist[i]->d_name);
stat(releasepath,buf);
now = time(NULL);
seconds = now - buf->st_mtime;
printf("%s %d\n", releaselist[i]->d_name, seconds);
free(releaselist[i]);
}
free(releaselist);
}
}
free(namelist);
}
}