我如何(以编程方式)将文件的写权限授予Linux中的特定用户?比如,它的拥有者?每个人都有对此文件的读取权限。
答案 0 :(得分:24)
在shell或shell脚本中,只需使用:
chmod u+w <filename>
这仅修改用户的写入位,所有其他标志保持不变。
如果您想在C程序中执行此操作,则需要使用:
int chmod(const char *path, mode_t mode);
首先通过
查询现有模式int stat(const char *path, struct stat *buf);
...只需通过newMode = oldMode | S_IWUSR
设置写入位。有关详细信息,请参阅man 2 chmod
和man 2 stat
。
答案 1 :(得分:9)
八进制模式644
将赋予所有者读取和写入权限,并且只读取该组其余部分以及其他用户的权限。
read = 4
write = 2
execute = 1
owner = read | write = 6
group = read = 4
other = read = 4
设置模式的命令的基本语法是
chmod 644 [file name]
在C中,那将是
#include <sys/stat.h>
chmod("[file name]", 0644);
答案 2 :(得分:1)
chmod 644 FILENAME
6是读写,4是只读。假设文件的所有者是您希望授予写入权限的用户。
答案 3 :(得分:-1)
你可以使用chmod做到这一点,在ubuntu你可以试试 $ sudo chmod 666 这将为所有人提供读/写权限...请查看此信息以获取更多详细信息: http://catcode.com/teachmod/
答案 4 :(得分:-1)
您可以使用chmod 777 <filename>