文件和目录管理-chmod命令

时间:2021-05-25 16:43:03
1、命令说明:

chmod命令其功能是改变文件或目录权限。

2、语法:

chmod [选项] 权限模式 文件列表...

3、实例:

        Linux下的每个文件都定义了所有者(user),所有组(group),其他人(others)的权限,我们使用字母u、g、o来分别代表所有者、所有组、其他人,而对应的具体权限则使用 rwx 的组合来定义。增加权限用 + 号, 删除权限用 - 号,详细权限使用 = 号。下表用一些例子说明了如何使用 chmod 来改变文件的权限。

作用 命令
给某文件添加用户读权限 chmod u+r somefile
给某文件删除用户读权限 chmod u-r somefile
给某文件添加用户写权限 chmod u+w somefile
给某文件删除用户写权限 chmod u-w somefile
给某文件添加用户执行权限 chmod u+x somefile
给某文件删除用户执行权限 chmod u-x somefile
添加用户对某文件的读写执行权限 chmod u+rwx somefile
删除用户对某文件的读写执行权限 chmod u-rwx somefile
给某文件设定用户拥有读写执行权限 chmod u=rwx somefile

       如上所示,如果要给用户组或其他人添加或删除相关权限,只需要将上面的 u 相应地更换成 g 或 o即可。但是正如大家看到的,这种方式同一时刻只能给文件所有者、文件所有组或是其他人设置权限,如果想要同时设置所有人的权限就需要使用数字表示法了。我们定义 r=4,w=2,x=1,如果权限是 rwx,则数字表示为 7,如果权限是 r-x,则数字表示为5。假设想设置一个文件的权限是:所有者的权限是读、写、执行(rwx),所有组的权限是读、执行(r-x),其他人的权限是只读(r--),那么可以使用chmod 754 somefile 来设置。

        如果需要修改的不是一个文件而是一个目录,以及该目录下所有文件、子目录、子目录下所有的文件和目录(即递归设置该目录下所有的文件和目录的权限),则需要使用 -R 参数,也就是 chmod -R 754 somedir。

        使用数字表示法设置权限是很常用的方式,需要熟练掌握。