1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
| int aff_direct(int argc, char **argv)
{
DIR *directory;
struct dirent *read;
struct stat s;
char *str;
str = malloc(sizeof(char) * 25);
directory = opendir(".");
if (directory == NULL)
exit(1);
count_total();
while ((read = readdir(directory)) != NULL)
{
if (stat(read->d_name,&s) == -1)
{
perror("stat");
exit(EXIT_FAILURE);
}
if (read->d_name[0] != '.')
{
aff_right();
printf("%d ", s.st_nlink);
aff_user();
aff_group();
printf("%d ", s.st_size);
str = (ctime(&s.st_mtime));
aff_acces(str);
printf("%s ", str);
printf("%s\n", read->d_name);
}
}
if (argc != 2)
exit(1);
if (closedir(directory) == (-1))
exit(-1);
return (0);
} |
Partager