chmod命令用法,linux chmod命令详解

Linux下一切都是文件,通过ls-l或者别名ll可以查看文件的详细信息:

chmod命令用法,linux chmod命令详解

drwxr-xr-x

第一个字符d指的是目录文件;

第2-4个字符rwx:

指的是u(user,owner)对这个文件具有可读可写可执行的权限;

第5-7字符r-x:

指的是g(group)对这个文件具有可读可执行权限;

第8-10字符r-x:

指的是o(other)对这个文件具有可读可执行的权限;

了解了文件权限位之后,我们来看看chmod命令的第一种语法结构:

chmod{u,g,o}{+,-,=}{r,w,x}file_name

考虑{u,g,o}{+,-,=}{r,w,x}花括号顺序不能变,排列组合也有:

,,2*23*,2*23*,2*23/2=732种,哇…是不是特别刺激,还能这么玩!

我们挑选其中几组数据来做说明:

第一组数据(每个花括号里面选一个元素)

chmodu+rfile

给所有者增加r权限:

第二组数据(每个花括号里面选2个元素)

chmodog+=rwfile

给所属组,其他用户设置权限为rw(+,=是按照从左到右顺序执行):

第三组数据(每个花括号里面选3个元素)

chmodugo=+-rwxfile

给所有者,所属组,其他用户先赋予rwx的权限,再追加rwx的权限,最后减rwx的权限,结果为没有任何权限。

基于现实,后面2种用法很少见,仅供娱乐;也就是+,-,=是不会组合到一起使用的,没有任何意思,下面再列取几个例子以供参考:

chmodu+wfile(给u(user,owner)添加一个w(可写的权限))

chmodugo=rwxfile(给所有用户包括u,g,o设置全部的权限)

chmoda=rwxfile(a代表所有用户,所以得到的结果和上面结果一样)

关于chmod命令的第二种语法结构:(就是采用数字)

chmod***filename

第一个*代表u所具有的权限

第二个*代表g所具有的权限

第三个*代表o所具有的权限

另外,

r代表4

w代表2

x代表1

rwx彼此之间的和,加上自己,可以有如下7种组合:

1=x(代表可执行)

2=w(代表可写)

3=x+w=1+2(代表可执行+可写)

4=r(代表可读)

5=1+4=x+r(代表可执行+可读)

6=2+4=w+r(代表可写+可读)

7=1+2+4=x+w+r(代表可执行+可写+可读)

举例:

chmod124file(给file的u设置可执行的权限;给g设置可写,给o设置可读)

chmod765file(给file的u设置全部的权限;给g设置可读可写,给o设置可读可执行)

以上2种方法,各有千秋。

chmod—-UNIX

文件/目录权限设置命令:chmod
这是Linux系统管理员最常用到的命令之一,它用于改变文件或目录的访问权限。该命令有两种用法:
用包含字母和操作符表达式的文字设定法
其语法格式为:chmod[who][opt][mode]文件/目录名
其中who表示对象,是以下字母中的一个或组合:
u:表示文件所有者
g:表示同组用户
o:表示其它用户
a:表示所有用户
opt则是代表操作,可以为:
+:添加某个权限
-:取消某个权限
=:赋予给定的权限,并取消原有的权限
而mode则代表权限:
r:可读
w:可写
x:可执行
例如:为同组用户增加对文件a.txt的读写权限:
chmodg+rwa.txt
用数字设定法
而数字设定法则更为简单:chmod[mode]文件名
关键是mode的取值,一开始许多初学者会被搞糊涂,其实很简单,我们将rwx看成二进制数,如果有则有1表示,没有则有0表示,那么rwxr-xr–则可以表示成为:
111101100
再将其每三位转换成为一个十进制数,就是754。
例如,我们想让a.txt这个文件的权限为:
自己同组用户其他用户
可读是是是
可写是是可执行
那么,我们先根据上表得到权限串为:rw-rw-r–,那么转换成二进制数就是110110100,再每三位转换成为一个十进制数,就得到664,因此我们执行命令:
chmod664a.txt

ubuntu14 chmod命令行怎么用

ubuntu14chmod命令行用法:
用Chmod命令,可以为每个用户,每个文件夹指定不同的权限,甚至可以为不同的用户组指定不同的操作权限
指令名称:chmod
使用权限:所有使用者
使用方式:chmod[-cfvR][–help][–version]modefile…
说明:Linux/Unix的档案调用权限分为三级:档案拥有者、群组、其他。利用chmod可以藉以控制档案如何被他人所调用。
参数:
mode:权限设定字串,格式如下:[ugoa…][[+-=][rwxX]…][,…],其中
u表示该档案的拥有者,g表示与该档案的拥有者属于同一个群体(group)者,o表示其他以外的人,a表示这三者皆是。
+表示增加权限、-表示取消权限、=表示唯一设定权限。
r表示可读取,w表示可写入,x表示可执行,X表示只有当该档案是个子目录或者该档案已经被设定过为可执行。
-c:若该档案权限确实已经更改,才显示其更改动作
-f:若该档案权限无法被更改也不要显示错误讯息
-v:显示权限变更的详细资料
-R:对目前目录下的所有档案与子目录进行相同的权限变更(即以递回的方式逐个变更)
–help:显示辅助说明
–version:显示版本
范例:将档案file1.txt设为所有人皆可读取:
chmodugo+rfile1.txt
将档案file1.txt设为所有人皆可读取:
chmoda+rfile1.txt
将档案file1.txt与file2.txt设为该档案拥有者,与其所属同一个群体者可写入,但其他以外的人则不可写入:
chmodug+w,o-wfile1.txtfile2.txt
将ex1.py设定为只有该档案拥有者可以执行:
chmodu+xex1.py
将目前目录下的所有档案与子目录皆设为任何人可读取:
chmod-Ra+r*
此外chmod也可以用数字来表示权限如chmod777file
语法为:chmodabcfile
其中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=7。
如000表示三项权限均无,而100表示只读。这样,我们就有了下面的对应:
0[000]无任何权限
4[100]只读权限
6[110]读写权限
7[111]读写执行权限

免责声明:本文部分文字与图片资源来自于网络,转载此文是出于传递更多信息之目的,若有来源标注错误或侵犯了您的合法权益,请立即在【本页面底部评论留言】通知我们,情况属实,我们会第一时间予以删除,并同时向您表示歉意

(0)
投稿专栏的头像投稿专栏官方
上一篇 2024年4月20日
下一篇 2024年4月21日

相关推荐

发表回复

登录后才能评论