c - 在 C 中复制文件后保留文件所有者和权限

标签 c permissions file-ownership

这是我的问题:在 C 中,我创建了一个文件的副本(有一些更改)这是通过 fopen()、getchar 和 putchar 轻松完成的。 复制文件很好,输出文件本身就是我想要的。

我的问题是:我假设我会经常使用这个程序作为 sudo,然后生成的文件有另一个所有者(root)以及不同的权限(执行权消失)。

我的问题是:如何复制原文件的所有者和权限,然后写入新文件?

最佳答案

使用fstat(2) 系统调用获取有关所有者和权限的详细信息,以及fchmod(2) 和fchown(2) 系统调用来设置它们。请参阅 *BSD cp(1) 的 setfile 函数中的示例 source code .

关于c - 在 C 中复制文件后保留文件所有者和权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5486774/

相关文章:

vb6 - 在VB中如何使文件可写?

wordpress - docker 命名卷的文件所有权

char*** 代码无法正常工作

c - while 字符串出错

permissions - spring-security ACL 如何授予权限

android - 允许从 SD 卡读取数据

linux - 如何在 Linux 中自动设置子目录中的组

Cocoa - 如何在 Storyboard模式下将 View 的委托(delegate)连接到文件的所有者?

c++ - GCC编译时无法生成目标文件

c - AVR C 中的位和字节解释