• linux每日命令(28): charp命令


    在linux系统里,文件或目录的权限的掌控以拥有者及所属群组来管理。可以使用chgrp指令取变更文件与目录所属群组,这种方式采用群组名称或群组识别码都可以。Chgrp命令就是change group的缩写!要被改变的组名必须要在/etc/group文件内存在才行。

    一.命令格式:

    chgrp [选项] [组] [文件]

    二.命令功能:

    chgrp命令可采用群组名称或群组识别码的方式改变文件或目录的所属群组。使用权限是超级用户。

    三.命令参数:

    参数描述
    -c 当发生改变时输出调试信息
    -f 不显示错误信息
    -R 处理指定目录以及其子目录下的所有文件
    -v 运行时显示详细的处理信息
    --dereference 作用于符号链接的指向,而不是符号链接本身
    --no-dereference 作用于符号链接本身
    --reference=<文件或者目录> 根据指定文件改变文件的群组属性
    --help 显示帮助信息
    --version 显示版本信息

    四.使用实例:

    1:改变文件的群组属性

     命令:

    chgrp -v bin log1

    输出:

    [root@localhost test]# ll log1
    ---xrw-r--. 2 root root 0 Nov 22 03:54 log1
    [root@localhost test]# chgrp -v bin log1
    changed group of ‘log1’ from root to bin
    [root@localhost test]# ll log1
    ---xrw-r--. 2 root bin 0 Nov 22 03:54 log1

    说明:

    将log1文件由root群组改为bin群组

    2:根据指定文件改变文件的群组属性

     命令:

    chgrp --reference=log1 dir2

    输出:

    [root@localhost test]# ll
    total 0
    drwxr-xr-x. 4 root root 159 Nov 20 19:24 dir1
    drwxr-xr-x. 2 root root 30 Nov 26 19:34 dir2
    ---xrw-r--. 2 root bin 0 Nov 22 03:54 log1
    ---xrw-r--. 2 root bin 0 Nov 22 03:54 log1.hard_link
    lrwxrwxrwx. 1 root root 4 Nov 22 03:54 log1.link -> log1
    [root@localhost test]# chgrp --reference=log1 dir2
    [root@localhost test]# ll
    total 0
    drwxr-xr-x. 4 root root 159 Nov 20 19:24 dir1
    drwxr-xr-x. 2 root bin 30 Nov 26 19:34 dir2
    ---xrw-r--. 2 root bin 0 Nov 22 03:54 log1
    ---xrw-r--. 2 root bin 0 Nov 22 03:54 log1.hard_link
    lrwxrwxrwx. 1 root root 4 Nov 22 03:54 log1.link -> log1

    说明:

    改变目录文件dir2 的群组属性,使得目录文件dir2 的群组属性和参考文件log1的群组属性相同

    3:改变指定目录以及其子目录下的所有文件的群组属性

     命令:

    chgrp -R bin dir1

    输出:

    [root@localhost test]# ll
    total 0
    drwxr-xr-x. 4 root root 159 Nov 20 19:24 dir1
    drwxr-xr-x. 2 root bin 30 Nov 26 19:34 dir2
    ---xrw-r--. 2 root bin 0 Nov 22 03:54 log1
    ---xrw-r--. 2 root bin 0 Nov 22 03:54 log1.hard_link
    lrwxrwxrwx. 1 root root 4 Nov 22 03:54 log1.link -> log1
    [root@localhost test]# ll dir1
    total 44
    -rwxrwxr-x. 1 root root 0 Nov 20 18:53 log1
    -rw-r--r--. 1 root root 50 Nov 20 18:56 log2
    drwxr-xr-x. 2 root root 44 Nov 20 19:35 log3
    -rw-r--r--. 1 root root 2683 Nov 17 00:23 logging.py
    -rw-r--r--. 1 root root 3877 Nov 17 00:23 logging.pyc
    -rw-r--r--. 1 root root 2410 Nov 17 00:23 log.py
    -rw-r--r--. 1 root root 3640 Nov 17 00:23 log.pyc
    drwxr-xr-x. 3 root root 30 Nov 17 00:15 logs
    -rw-r--r--. 1 root root 9679 Nov 17 00:23 log_test.py
    -rw-r--r--. 1 root root 10246 Nov 17 00:23 log_test.pyc
    [root@localhost test]# chgrp -R bin dir1
    [root@localhost test]# ll dir1
    total 44
    -rwxrwxr-x. 1 root bin 0 Nov 20 18:53 log1
    -rw-r--r--. 1 root bin 50 Nov 20 18:56 log2
    drwxr-xr-x. 2 root bin 44 Nov 20 19:35 log3
    -rw-r--r--. 1 root bin 2683 Nov 17 00:23 logging.py
    -rw-r--r--. 1 root bin 3877 Nov 17 00:23 logging.pyc
    -rw-r--r--. 1 root bin 2410 Nov 17 00:23 log.py
    -rw-r--r--. 1 root bin 3640 Nov 17 00:23 log.pyc
    drwxr-xr-x. 3 root bin 30 Nov 17 00:15 logs
    -rw-r--r--. 1 root bin 9679 Nov 17 00:23 log_test.py
    -rw-r--r--. 1 root bin 10246 Nov 17 00:23 log_test.pyc

    说明:

    将dir1目录以及其子目录下的所有文件的群组属性由root改变为bin

    4:通过群组识别码改变文件群组属性

    命令:

    chgrp -R 0 dir1

    输出:

    [root@localhost test]# cat /etc/group
    root:x:0:
    bin:x:1:
    daemon:x:2:
    sys:x:3:
    ...
    
    [root@localhost test]# chgrp -R 0 dir1
    [root@localhost test]# ll
    total 0
    drwxr-xr-x. 4 root root 159 Nov 20 19:24 dir1
    drwxr-xr-x. 2 root bin 30 Nov 26 19:34 dir2
    ---xrw-r--. 2 root bin 0 Nov 22 03:54 log1
    ---xrw-r--. 2 root bin 0 Nov 22 03:54 log1.hard_link
    lrwxrwxrwx. 1 root root 4 Nov 22 03:54 log1.link -> log1
    
    [root@localhost test]# ll dir1
    total 44
    -rwxrwxr-x. 1 root root 0 Nov 20 18:53 log1
    -rw-r--r--. 1 root root 50 Nov 20 18:56 log2
    drwxr-xr-x. 2 root root 44 Nov 20 19:35 log3
    -rw-r--r--. 1 root root 2683 Nov 17 00:23 logging.py
    -rw-r--r--. 1 root root 3877 Nov 17 00:23 logging.pyc
    -rw-r--r--. 1 root root 2410 Nov 17 00:23 log.py
    -rw-r--r--. 1 root root 3640 Nov 17 00:23 log.pyc
    drwxr-xr-x. 3 root root 30 Nov 17 00:15 logs
    -rw-r--r--. 1 root root 9679 Nov 17 00:23 log_test.py
    -rw-r--r--. 1 root root 10246 Nov 17 00:23 log_test.pyc

    说明:

    通过群组识别码改变文件群组属性,0为root群组的识别码,具体群组和群组识别码可以去/etc/group文件中查看

  • 相关阅读:
    docker cannot stop container问题解决
    Could not get lock /var/lib/dpkg/lock-frontend解决
    SpringBoot解决跨域请求拦截
    Mybatis插件开发
    kill 命令在Java应用中使用注意事项
    SpringBoot处理全局统一异常
    docker上传自己的镜像
    创建swagger的springboot-stater,并在spring cloud zuul网关中引入
    Docker+Jenkins+Git发布SpringBoot应用
    git使用.gitignore文件忽略相关文件上传
  • 原文地址:https://www.cnblogs.com/zhongbokun/p/10265310.html
Copyright © 2020-2023  润新知