【发布时间】:2021-03-12 00:42:39
【问题描述】:
我是 C 编程新手,我正在尝试将文件的权限设置为只读。我确定我没有正确的指令,当我尝试编译时,我在#include
操作系统是使用 GCC 的 Raspberry Pi 4 Arm 的 Rasbian
#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
#include <io.h>
#include <sys.h>
struct stat st = {0};
int main(void){
if(_chmod("time_logs/time.log", _S_IREAD) == -1)
perror("Not found");
else{
_chmod("time_logs/time.log", _S_IREAD);
}
}
【问题讨论】:
-
您的问题陈述与描述不符
-
我假设您是在 Windows 中编码?如果是这样,建议将其添加到描述和标签中。还包括您的编译方式会有所帮助。
-
您使用的是什么操作系统?为什么要用相同的参数两次调用
_chmod()函数? -
我正在使用 Raspberry Pi 4 Arm 架构进行编码。使用 Arm gcc。我可能在研究时选择了错误的指令,但我在 Raspberry Pi 4 Raspbian Arm 中编码。我并不完全熟悉 _chmod 的工作原理。我已经将它与 Linux 命令一起使用,并对如何使用 C 更改文件的权限进行了一些研究,并且 _chmod 被使用了几次。这是我对操纵文件权限的最佳猜测。
-
您一定正在阅读一些 Microsoft 文档。该代码对 Linux 无效。建议您更具体地搜索“linux C更改文件权限”
标签: c gcc permissions raspberry-pi4 raspbian-buster