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;
}
Comments
Post a Comment