Я плохо знаком с программированием C, и я хотел бы реализовать команду chmod на файлах dir и subdir. Как я могу измениться/показать полномочия с кодом C? Кто-то мог помочь с примером? Я ценил бы, если кто-либо может предоставить мне код.
Есть функция chmod. От man 3p chmod :
SYNOPSIS
#include <sys/stat.h>
int chmod(const char *path, mode_t mode);
...
Если вы хотите прочитать разрешения, вы должны использовать stat. Из man 3p stat :
SYNOPSIS
#include <sys/stat.h>
int stat(const char *restrict path, struct stat *restrict buf);
...
Если вы хотите сделать это рекурсивно, как вы упомянули, вам придется выполнить цикл по результатам readdir
самостоятельно.
с библиотекой GNU C вы должны быть в состоянии сделать это напрямую
int chmod (const char *filename, mode_t mode)
int chown (const char *filename, uid_t owner, gid_t group)
проверьте это здесь. все эти функции находятся в sys/stat.h