Linux:chmod 命令
一、基本格式
Linux/Unix 的文件调用权限分为三级 : 文件拥有者、群组、其他。利用 chmod 可以设置或修改目录以及文件的使用权限。
语法:chmod [-cfvR] [--help] [--version] mode file...
参数:
mode : 权限设定字串,如 : [ugoa...][[+-=][rwxX]...][,...]
其中:
(1)u 表示该文件的拥有者,g 表示与该文件的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是。
(2)+ 表示增加权限、- 表示取消权限、= 表示唯一设定权限。
(3)r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该文件是个子目录或者该文件已经被设定过为可执行。
mode 也可以用数字表示。数字表示的属性的含义:0表示没有权限,1表示可执行权限,2表示可写权限,4表示可读权限,然后将其相加。所以数字属性的格式应为3个从0到7的八进制数,其顺序是(u)(g)(o)。
例如,如果想让某个文件的属主有“读/写”二种权限,需要把4(可读)+2(可写)=6(读/写)。
其他参数说明:
-c : 若该文件权限确实已经更改,才显示其更改动作
-f : 若该文件权限无法被更改也不要显示错误讯息
-v : 显示权限变更的详细资料
-R : 对目前目录下的所有文件与子目录进行相同的权限变更(即以递回的方式逐个变更)
--help : 显示辅助说明
--version : 显示版本
二、实例
1.将文件 file1.txt 设为所有人可读取 :
chmod ugo+r file1.txt
2.将文件 file1.txt 设为所有人可读取 :
chmod a+r file1.txt
3.将文件 file1.txt 与 file2.txt 设为该文件拥有者,与其所属同一个群体者可写入,但其他以外的人则不可写入 :
chmod ug+w,o-w file1.txt file2.txt
4.将 ex1.py 设定为只有该文件拥有者可以执行 :
chmod u+x ex1.py
5.将目前目录下的所有文件与子目录皆设为任何人可读取 :
chmod -R a+r *
6.此外chmod也可以用数字来表示权限如 :
chmod 777 file
7.数字设定法
r=4,w=2,x=1
若要rwx属性则4+2+1=7;
若要rw-属性则4+2=6;
若要r-x属性则4+1=5。
chmod a=rwx file
和
chmod 777 file
效果相同
chmod ug=rwx,o=x file
和
chmod 771 file
效果相同
若用chmod 4755 filename可使此程序具有root的权限