📅  最后修改于: 2023-12-03 15:30:16.104000             🧑  作者: Mango
在C语言中,可以使用chmod
函数来更改文件的权限。
int chmod(const char *pathname, mode_t mode);
pathname
:文件名或文件路径mode
:一个无符号的整数,表示要设置的权限值权限值是一个三位数,每一位表示不同的权限。
每一位的数值可以为以下其中之一:
例如:
以下是一个示例代码,展示如何使用chmod
函数来更改文件的权限。
#include <stdio.h>
#include <sys/stat.h>
int main()
{
char *filename = "test.txt";
mode_t mode = 0644; // 所有者有读写权限,其他用户只有读权限
if (chmod(filename, mode) == -1)
{
perror("chmod");
return 1;
}
printf("权限已更改\n");
return 0;
}
这个程序将test.txt
文件的权限更改为所有者有读写权限,其他用户只有读权限。
首先,我们定义变量filename
和mode
,filename
表示要更改权限的文件名,mode
表示要设置的权限值。
接着,我们调用chmod
函数来更改文件的权限。如果成功,chmod
函数返回0;如果失败,返回-1。
最后,如果chmod
函数执行成功,程序会输出一条消息,提示权限已更改。
如果chmod
函数执行失败,程序会调用perror
函数来输出错误信息,并返回1。
使用chmod
函数可以很方便地更改文件的权限。通过设置权限值,我们可以控制不同用户对文件的访问能力。