Implement in C the following ls Unix command using system calls - C C++ Java Programs - Examples

Latest

C C++ Java Python Perl Programs Examples with Output -useful for Schools & College Students

Thursday, October 6, 2011

Implement in C the following ls Unix command using system calls


--------------------------------------------------------




Implement in C the following ls Unix command using system calls


#include <sys/types.h>
#include <sys/dir.h>
#include <sys/param.h>
#include <stdio.h>

#define FALSE 0
#define TRUE 1

extern  int alphasort();

char pathname[MAXPATHLEN];

main()   { 
int count,i;
struct dirent **files;
int file_select();

if (getwd(pathname) == NULL )
{ printf("Error getting pathn");
exit(0);
}
printf("Current Working Directory = %sn",pathname);
count = scandir(pathname, &files, file_select, alphasort);

if (count <= 0)
{  printf("No files in this directoryn");
exit(0);
}
printf("Number of files = %dn",count);
for (i=1;i<count+1;++i)
 printf("%s  \n",files[i-1]->d_name);

}


int file_select(struct direct   *entry)

{
if ((strcmp(entry->d_name, ".") == 0) ||(strcmp(entry->d_name, "..") == 0))
 return (FALSE);
else
return (TRUE);
}


------------------------------------------------------------------------------------




No comments:

Post a Comment