Linux 文件管理命令(二)

时间:2021-02-25 05:16:40

Linux 文件管理命令(二)

chgrp : 用于变更文件或目录的所属群组。

        文件或目录权限的掌控以拥有者及所属群组来管理。设置方式采用群组名称或群组识别码皆可。

       语法:

        chgrp [-cfhRv][--help][--version][所属群组][文件或目录...] 或 chgrp [-cfhRv][--help][--reference=<参考文件或目录>][--version][文件或目录...]
      参数:

       -c或--changes 效果类似"-v"参数,但仅回报更改的部分。

       -f或--quiet或--silent  不显示错误信息。

       -h或--no-dereference  只对符号连接的文件作修改,而不更动其他任何相关文件。

       -R或--recursive  递归处理,将指定目录下的所有文件及子目录一并处理。

       -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的群组属性相同。


 

Unix: 文件调用权限分为三级:文件拥有者、群组和其他。利用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的权限





本文出自 “13176526” 博客,请务必保留此出处http://13186526.blog.51cto.com/13176526/1963471