GLib库中的chmod
时间: 2023-07-21 13:19:52 浏览: 126
GLib库中的 `g_chmod` 函数用于更改文件或目录的权限。该函数有两个参数:
- `filename`:需要更改权限的文件或目录的路径。
- `mode`:新的权限模式,以八进制表示。
该函数返回一个整数值,表示操作是否成功。如果返回0,则表示操作成功,否则表示操作失败。在失败的情况下,可以通过设置 `errno` 变量来查看错误码。
例如,如果要将文件 `example.txt` 的权限更改为 `rw-r--r--`,可以使用以下代码:
```c
#include <glib.h>
int main() {
const char *filename = "example.txt";
int mode = 0644; // rw-r--r--
int result = g_chmod(filename, mode);
if (result == 0) {
g_print("File permissions changed successfully.\n");
} else {
g_print("Error changing file permissions: %s\n", g_strerror(errno));
}
return 0;
}
```
注意,`g_chmod` 函数只能更改文件或目录的权限,而不能更改所有权和组。如果需要更改所有权和组,请使用类似于 `chown` 和 `chgrp` 的系统调用。
阅读全文