chmod命令

说明 linux 文件调用权限分为三级:文件拥有者、群组、其他。利用 chmod 可以控制文件如何被他人所调用

语法

用法:chmod [选项]... 模式[,模式]... 文件...
 或:chmod [选项]... 八进制模式 文件...
 或:chmod [选项]... --reference=参考文件 文件...
Change the mode of each FILE to MODE.
With --reference, change the mode of each FILE to that of RFILE.

  -c, --changes          like verbose but report only when a change is made
  -f, --silent, --quiet  suppress most error messages
  -v, --verbose          output a diagnostic for every file processed
      --no-preserve-root  do not treat '/' specially (the default)
      --preserve-root    fail to operate recursively on '/'
      --reference=RFILE  use RFILE's mode instead of MODE values
  -R, --recursive        change files and directories recursively
      --help        显示此帮助信息并退出
      --version     显示版本信息并退出

Each MODE is of the form '[ugoa]*([-+=]([rwxXst]*|[ugo]))+|[-+=][0-7]+'.

参数说明
mode : 权限设定字串,格式如下 :

[ugoa...][[+-=][rwxX]...][,...]
  • u 表示该文件的拥有者,g 表示与该文件的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是。
  • + 表示增加权限、- 表示取消权限、= 表示唯一设定权限。
  • r 表示可读取(数字代号为“4”),
    w 表示可写入(数字代号为“2”),
    x 表示可执行(数字代号为“1”),
    X 表示只有当该文件是个子目录或者该文件已经被设定过为可执行。
  • -c : 若该文件权限确实已经更改,才显示其更改动作
  • -f : 若该文件权限无法被更改也不要显示错误讯息
  • -v : 显示权限变更的详细资料
  • -R : 对目前目录下的所有文件与子目录进行相同的权限变更(即以递回的方式逐个变更)
  • --help : 显示辅助说明
  • --version : 显示版本

示例
新建test.sh 文件 初始权限为 : -rw-r--r-- (644)

chmod命令_第1张图片
linux文件权限.jpg

① u 属用户
② g 属组
③ o 其他人

  • test.sh 设为所有人皆可执行
chmod ugo+x test.sh    
等价于  chmod +x test.sh   
等价于  chmod a+x test.sh  
等价于  chmod 755 wc.sh
  • test.sh 设为该文件拥有者可执行
chmod u+x test.sh
等价于 chmod 744 test.sh
  • test1.sh test2.sh设为该文件拥有者,与其所属同一个群体者可写入,但其他以外的人则不可写入
chmod ug+w,o-w test1.sh test2.sh  

你可能感兴趣的:(chmod命令)