发布网友 发布时间:2022-04-24 02:51
共4个回答
热心网友 时间:2023-10-22 23:22
chmod应用格式为 其语法格式为:chmod [who] [opt] [mode] 文件/目录名
例如:chmod *** /xx/yy/zz
其中who表示对象,是以下字母中的一个或组合:
u:表示文件所有者
g:表示同组用户
o:表示其它用户
a:表示所有用户
opt则是代表操作,可以为:
+:添加某个权限
-:取消某个权限
=:赋予给定的权限,并取消原有的权限
而mode则代表权限:
r:可读
w:可写
x:可执行
例如:为同组用户增加对文件a.txt的读写权限:
chmod g+rw a.txt
用数字设定法
而数字设定法则更为简单:chmod [mode] 文件名
关键是mode的取值,一开始许多初学者会被搞糊涂,其实很简单,我们将rwx看成二进制数,如果有则有1表示,没有则有0表示,那么rwx r-x r- -则可以表示成为:
111 101 100
再将其每三位转换成为一个十进制数,就是754。
例如,我们想让a.txt这个文件的权限为:
自己 同组用户 其他用户
可读 是 是 是
可写 是 是 可执行
那么,我们先根据上表得到权限串为:rw-rw-r--,那么转换成二进制数就是110 110 100,再每三位转换成为一个十进制数,就得到6,因此我 们执行命令:
chmod 6 a.txt
也可以这样看表示权限的数字表达方法 比二进制略简单
4代表读权限 2代表写权限 1代表可执行。然后将每段的rwx权限对应数值相加 (这样看权限:第一个-代表文档是目录还是文件 然后三个一看 三个一看 如-rw-r--r-- 则转化为 - 4+2,4,4 为4
这样就变为chnod 4 ***
你那个问题(-rwxr-xr-x)就可以这样看(- rwx r-x r-x)解决 chmod 755 /aaa/bbb/cc
热心网友 时间:2023-10-22 23:22
#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
int main()
{
chmod("/home/beyes/chmod_test.txt", 0755);
return 0;
}
----------------
简单的程序,不做出错检查。
首先检查你对文件是否有修改的权限。
声明的头文件为 sys/types.h
注意,你的 chmod() 函数参数传递有误,右面的 0755 不是指针类型。
热心网友 时间:2023-10-22 23:23
chmod("/aaa/bbb/cc","0755");
把“0755” 改成 0755
另外,注意权限,你的程序有权限修改aaa/bbb/cc的mode么
热心网友 时间:2023-10-22 23:23
chmod 755 /aaa/bbb/cc 我用命令
热心网友 时间:2023-10-22 23:22
chmod应用格式为 其语法格式为:chmod [who] [opt] [mode] 文件/目录名
例如:chmod *** /xx/yy/zz
其中who表示对象,是以下字母中的一个或组合:
u:表示文件所有者
g:表示同组用户
o:表示其它用户
a:表示所有用户
opt则是代表操作,可以为:
+:添加某个权限
-:取消某个权限
=:赋予给定的权限,并取消原有的权限
而mode则代表权限:
r:可读
w:可写
x:可执行
例如:为同组用户增加对文件a.txt的读写权限:
chmod g+rw a.txt
用数字设定法
而数字设定法则更为简单:chmod [mode] 文件名
关键是mode的取值,一开始许多初学者会被搞糊涂,其实很简单,我们将rwx看成二进制数,如果有则有1表示,没有则有0表示,那么rwx r-x r- -则可以表示成为:
111 101 100
再将其每三位转换成为一个十进制数,就是754。
例如,我们想让a.txt这个文件的权限为:
自己 同组用户 其他用户
可读 是 是 是
可写 是 是 可执行
那么,我们先根据上表得到权限串为:rw-rw-r--,那么转换成二进制数就是110 110 100,再每三位转换成为一个十进制数,就得到6,因此我 们执行命令:
chmod 6 a.txt
也可以这样看表示权限的数字表达方法 比二进制略简单
4代表读权限 2代表写权限 1代表可执行。然后将每段的rwx权限对应数值相加 (这样看权限:第一个-代表文档是目录还是文件 然后三个一看 三个一看 如-rw-r--r-- 则转化为 - 4+2,4,4 为4
这样就变为chnod 4 ***
你那个问题(-rwxr-xr-x)就可以这样看(- rwx r-x r-x)解决 chmod 755 /aaa/bbb/cc
热心网友 时间:2023-10-22 23:22
#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
int main()
{
chmod("/home/beyes/chmod_test.txt", 0755);
return 0;
}
----------------
简单的程序,不做出错检查。
首先检查你对文件是否有修改的权限。
声明的头文件为 sys/types.h
注意,你的 chmod() 函数参数传递有误,右面的 0755 不是指针类型。
热心网友 时间:2023-10-22 23:23
chmod("/aaa/bbb/cc","0755");
把“0755” 改成 0755
另外,注意权限,你的程序有权限修改aaa/bbb/cc的mode么
热心网友 时间:2023-10-22 23:23
chmod 755 /aaa/bbb/cc 我用命令