Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Hello, i need to create a C program filestat that takes as a command line parame

ID: 3663463 • Letter: H

Question

Hello, i need to create a C program filestat that takes as a command line parameter the name of a directory, and for every file or directory in the passed directory print out the contents of the stat structure associated in the following sample format. I have started this program and have all the proper #inlcudes and first command line. Please help me continue the development of this program.

My program so far:

#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <errno.h>
#include <time.h>
#include <dirent.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <stdio.h>

extern int errno;
void err_quit(char *);

int main(int argc, char *argc[]) {

return 0;
}

Explanation / Answer

Here is the program as per your expectations.

#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <errno.h>
#include <time.h>
#include <dirent.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <stdio.h>
#include <dirent.h>
#include <stdio.h>

extern int errno;
void err_quit(char *);
int main(int argc, char *argv[]) // I have changed it to argv[]
{

char ch, file_name[25]; // to name the file and to read a character from file we declare.
FILE *fp; // file pointer
DIR *d;
struct dirent *dir;
if(argc == 2)
d = opendir(argv[1]); // we are getting the directory name
if (d)
{
while ((dir = readdir(d)) != NULL) // reading the file names in the directory
{
printf("%s ", dir->d_name); // printing the file name.

file_name = dir->d_name;
fp = fopen(file_name,"r"); // opening a file in read mode.

if( fp == NULL )
{
printf("Error while opening the file. ");
}
else

{
printf("The contents of %s file are : ", file_name);

while( ( ch = fgetc(fp) ) != EOF )
printf("%c",ch);

fclose(fp); // closing the file

}
}

closedir(d); // closing the directory.
}

return(0);
}

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Chat Now And Get Quote