Linux/Unix 文件管理命令(二)
ide
chgrp : 用于变动文件或目录的所属群组。ui
文件或目录权限的掌控以拥有者及所属群组来管理。设置方式采用群组名称或群组识别码皆可。spa
语法:递归
chgrp [-cfhRv][--help][--version][所属群组][文件或目录...] 或 chgrp [-cfhRv][--help][--reference=<参考文件或目录>][--version][文件或目录...]
参数:it
-c或--changes 效果相似"-v"参数,但仅回报更改的部分。io
-f或--quiet或--silent 不显示错误信息。class
-h或--no-dereference 只对符号链接的文件做修改,而不更动其余任何相关文件。test
-R或--recursive 递归处理,将指定目录下的全部文件及子目录一并处理。file
-v或--verbose 显示指令执行过程。权限
--help 在线帮助。
--reference=<参考文件或目录> 把指定文件或目录的所属群组所有设成和参考文件或目录的所属群组相同。
--version 显示版本信息。
eg:
1:改变文件的群组属性。
chgrp -v bin log2017.log
输出:
[root@localhost test]# ll
---xrw-r-- 1 root root benet 9-7 16:34 log2017.log
[root@localhost test]# chgrp -v bin log2017.log
"log2017.log" 的所属组已更改成 bin
[root@localhost test]# ll
---xrw-r-- 1 root bin benet 9-7 16:34 log2017.log
说明:
将log2017.log文件有root群组改成bin群组。
2.根据制定文件改变文件的群组属性。
chgrp --reference=log2017.log log1996.log
输出:
[root@localhost test]# ll
---xrw-r-- 1 root bin benet 9-7 16:38 log2017.log
-rw-r--r-- 1 root root 61 9-7 16:38 log1996.log
[root@localhost test]# chgrp --reference=log2017.log log1996.log
[root@localhost test]# ll
---xrw-r-- 1 root bin benet 9-7 16:38 log2017.log
-rw-r--r-- 1 root bin 61 9-7 16:38 log1996.log
说明:
改变文件log1996.log 的群组属性,使得文件log1996.log的群组属性和参考文件log2017.log的群组属性相同。
chmod: 文件调用权限分为三级:文件拥有者、群组和其余。利用chmod能够籍以控制文件如何被他人所调用。
使用权限:
全部使用者。
语法:
chmod [-cfvR] [--help] [--version] mode file...
参数:
mode:权限设定子串,格式以下:
[ugoa...][[+-=][rwxX]...][,...]
u 表示该文件的拥有者,g 表示与该文件的拥有者属于同一个群体(group)者,o 表示其余之外的人,a 表示这三者皆是。
+ 表示增长权限、- 表示取消权限、= 表示惟一设定权限。
r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该文件是个子目录或者该文件已经被设定过为可执行。
-c : 若该文件权限确实已经更改,才显示其更改动做
-f : 若该文件权限没法被更改也不要显示错误讯息
-v : 显示权限变动的详细资料
-R : 对目前目录下的全部文件与子目录进行相同的权限变动(即以递回的方式逐个变动)
--help : 显示辅助说明
--version : 显示版本
eg:
将文件 yuping.txt 设为全部人皆可读取 :
chmod ugo+r yuping.txt
将文件 yuping.txt 设为全部人皆可读取 :
chmod a+r yuping.txt
将文件 yuping.txt 与 chutianyi.txt 设为该文件拥有者,与其所属同一个群体者可写入,但其余之外的人则不可写入 :
chmod ug+w,o-w yuping.txt chutianyi.txt
将 yuping.py 设定为只有该文件拥有者能够执行 :
chmod u+x yuping.py
将目前目录下的全部文件与子目录皆设为任何人可读取 :
chmod -R a+r *
此外chmod也能够用数字来表示权限如 :
chmod 777 file
语法为:
chmod abc file
其中a,b,c各为一个数字,分别表示User、Group、及Other的权限。
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的权限