Given a file, we have to change the permissions of the file using the system() function by specifying the "chmod" command.
The system() function is a library function of <stdlib.h> or <cstdlib> header file which is used to execute the commands that can be executed in the command processor or the terminal of the operating system, and finally returns the command after it has been completed.
int system(const char *string);
The argument string is the command to be executed.
To change the permission of a file, create (form) the command using the chmod command and pass it into the system() function.
The source code to change the permissions of the file using the system() function is given below. The given program is compiled and executed using GCC compile on UBUNTU 18.04 OS successfully.
// C program to change the permissions of file
// using the system() function
char fileName = "file.txt";
int ret = 0;
sprintf(cmd, "chmod 666 %s", fileName);
ret = system(cmd);
if (ret == 0)
printf("Permissions of file changed successfully\n");
printf("Unable to change the permissions of file\n");
Permissions of file changed successfully
Here, we created a character array fileName, which is initialized with "file.txt". Then we changed the file permissions using the system() function by specifying the "chmod" command and printed the appropriate message on the console screen.
total answers (1)
start bookmarking useful questions and collections and save it into your
own study-lists, login now to start creating your own collections.