C Program to create files with different Read/Write Permissions


 

C Program to create files with different Read/Write Permissions

#include<fcntl.h>
#include<sys/types.h>
#include<sys/stat.h>
#include<stdio.h>
int main()
{
        int fd,ch,q=0;
        char name[25];
        printf("Enter the name of the file:");
        scanf("%s",name);
        fd=access(name,F_OK);
if(fd==-1)
{
printf("1.User has read,write and execute permission\n");
printf("2.User has read permission\n");
printf("3.User has write permission\n");
printf("4.User has execute permission\n");
printf("5.User has read,write permission\n");
printf("6.User has read,execute permission\n");
printf("7.User has write,execute permission\n");
printf("8.Group has read,write and execute permission\n");
printf("9.Group has read permission\n");
printf("10.Group has write permission\n");
printf("11.Group has execute permission\n");
printf("12.Group has read,write permission\n");
printf("13.Group has read,execute permission\n");
printf("14.Group has write,execute permission\n");
printf("15.Others has read,write and execute permission\n");
printf("16.Others has read permission\n");
printf("17.Others has write permission\n");
printf("18.Others has execute permission\n");
printf("19.Others has read,write permission\n");
printf("20.Others has read,execute permission\n");
printf("21.Others has write,execute permission\n");
printf("Enter your choice:");
scanf("%d",&ch);
switch(ch)
{
case 1:fd=open(name,O_WRONLY|O_CREAT,S_IRWXU);
       printf("%s File is created.\n",name);
 close(fd);
       break;
case 2:fd=open(name,O_WRONLY|O_CREAT,S_IRUSR);
       printf("%s File is created.\n",name);
       close(fd);
       break;
case 3:fd=open(name,O_WRONLY|O_CREAT,S_IWUSR);
       printf("%s File is created.\n",name);
       close(fd);
       break;
case 4:fd=open(name,O_WRONLY|O_CREAT,S_IXUSR);
       printf("%s File is created.\n",name);
       close(fd);
       break;
case 5:fd=open(name,O_WRONLY|O_CREAT,S_IRUSR|S_IWUSR);
       printf("%s File is created.\n",name);
       close(fd);
       break;
case 6:fd=open(name,O_WRONLY|O_CREAT,S_IRUSR|S_IXUSR);
       printf("%s File is created.\n",name);
       close(fd);
       break;
case 7:fd=open(name,O_WRONLY|O_CREAT,S_IWUSR|S_IXUSR);
       printf("%s File is created.\n",name);
       close(fd);
       break;
case 8:fd=open(name,O_WRONLY|O_CREAT,S_IRWXG);
       printf("%s File is created.\n",name);
       close(fd);
       break;
case 9:fd=open(name,O_WRONLY|O_CREAT,S_IRGRP);
       printf("%s File is created.\n",name);
       close(fd);
       break;
case 10:fd=open(name,O_WRONLY|O_CREAT,S_IWGRP);
       printf("%s File is created.\n",name);
       close(fd);
       break;
case 11:fd=open(name,O_WRONLY|O_CREAT,S_IXGRP);
       printf("%s File is created.\n",name);
       close(fd);
       break;
case 12:fd=open(name,O_WRONLY|O_CREAT,S_IRGRP|S_IWGRP);
       printf("%s File is created.\n",name);
       close(fd);
       break;
case 13:fd=open(name,O_WRONLY|O_CREAT,S_IRGRP|S_IXGRP);
       printf("%s File is created.\n",name);
       close(fd);
       break;
case 14:fd=open(name,O_WRONLY|O_CREAT,S_IWGRP|S_IXGRP);
       printf("%s File is created.\n",name);
       close(fd);
       break;
case 15:fd=open(name,O_WRONLY|O_CREAT,S_IRWXO);
       printf("%s File is created.\n",name);
       close(fd);
       break;
case 16:fd=open(name,O_WRONLY|O_CREAT,S_IROTH);
       printf("%s File is created.\n",name);
       close(fd);
       break;
case 17:fd=open(name,O_WRONLY|O_CREAT,S_IWOTH);
       printf("%s File is created.\n",name);
       close(fd);
       break;
case 18:fd=open(name,O_WRONLY|O_CREAT,S_IXOTH);
       printf("%s File is created.\n",name);
       close(fd);
       break;
case 19:fd=open(name,O_WRONLY|O_CREAT,S_IROTH|S_IWOTH);
       printf("%s File is created.\n",name);
       close(fd);
       break;
case 20:fd=open(name,O_WRONLY|O_CREAT,S_IROTH|S_IXOTH);
       printf("%s File is created.\n",name);
       close(fd);
       break;
case 21:fd=open(name,O_WRONLY|O_CREAT,S_IWOTH|S_IXOTH);
       printf("%s File is created.\n",name);
       close(fd);
       break;
default:printf("Your option is invalid..\n");
}
}
else
printf("Error!! %s Already exists..\n",name);
return 0;
}

Post a Comment

Previous Post Next Post