日期:2014-05-16  浏览次数:20860 次

linux 文件访问权限说明及ls命令
举例来说明一下:
-|rw-|r--|r--
1、r代表可读,w表示可写,-表示该文件的所有者没有对文件的执行权限,具有可执行权限则用x表示。
2、第一个字符是文件类型(文件类型分两种:普通文件和目录文件,若为普通文件,用连字号-表示;若为目录文件就用d表示。)
3、剩下的字符表示对文件的访问权限
4、第一个字符的后3个字符表示文件所有者对文件的访问权限。
5、后续3个字符表示组成员用户对文件的访问权限。
6、再后续的3个字符为文件的其他用户对文件的访问权限。

修改权限
在终端输入:
chmod o+w xxx.xxx 

表示给其他人授予写xxx.xxx这个文件的权限

chmod go-rw xxx.xxx 

表示删除xxx.xxx中组群和其他人的读和写的权限

其中:
u 代表所有者(user)
g 代表所有者所在的组群(group)
o 代表其他人,但不是u和g (other)
a 代表全部的人,也就是包括u,g和o

  r 表示文件可以被读(read)
  w 表示文件可以被写(write)
  x 表示文件可以被执行(如果它是程序的话)
 
其中:rwx也可以用数字来代替
  r ------------4
  w -----------2
  x ------------1
  - ------------0

行动:
  + 表示添加权限
  - 表示删除权限
  = 表示使之成为唯一的权限


ls的用法: ls [OPTION]... [FILE]...

列举文件信息(默认当前目录), 如果-cftuvSUX或者--sort没有设置则按照字典顺序排序条目

1) 控制显示范围
ls -a
不忽略以.开头的条目,即显示所有文件和目录包括隐藏文件和隐藏目录

ls -A
类似ls -a,但是不显式.和..目录

2) 控制显示格式

ls -1                       
每行列举一个文件,注意是1234的1,不是字母l

ls -x 
以从左到右,由上至下的横列方式显示文件和目录名称

ls -n
类似-l, 但是列举用户和分组的id,即不显式owner和group的名字,而替代为id(数字)
ls -l的结果:
-rw-r--r-- 1 sky sky    0 Aug 31 23:43 a.txt
-rw-r--r-- 1 sky sky    0 Aug 31 23:43 b.tar
ls -n的结果:
-rw-r--r-- 1 1000 1000    0 Aug 31 23:43 a.txt
-rw-r--r-- 1 1000 1000    0 Aug 31 23:43 b.tar

ls -Q,
显示时为每个文件和文件夹的名字增加前后双引号,如
"a.txt"  "b.tar"  "b.txt"  "bash"  "bash_list.sh"  "bin"  "dev"  "workspace"

ls -F
为条目增加指示符,例如"lib"目录显示为"lib/",文件不变,举例如:
a.txt  b.tar  b.txt  bash/  bash_list.sh@  bin/  dev/  workspace/

ls -m
显示时用","号区隔每个文件和目录的名称,举例如
a.txt, b.tar, b.txt, bash, bash_list.sh, bin, dev, workspace

3) 控制显示内容

ls -l
使用长格式,每个文件或者目录一行,显示详细信息
   具体对应:显示方式、链接数目、所有者、组、大小(按字节)和每个文件最近一次修改时间
ls -lG
G用于在长格式时不显示group名称

ls -o
类似ls -l,但是不显示owner名称

ls -g
类似ls -l,但是不显示group信息,等同于ls -lG

ls -lh  
-h参数通常和-l一起使用, 以可读的格式打印大小(如, 1K 234M 2G)

ls --si -l
--si参数类似-h参数,以可读的格式打印大小,但是计算单位是1000Bytes而非1024Bytes

ls -s
显示每个文件的大小,以block为单位,结果如:
0 a.txt  0 b.tar  0 b.txt  4 bash  0 bash_list.sh  4 bin  4 dev  4 workspace

ls -i
显示文件和目录的inode编号,结果如:
148712 a.txt  148775 b.txt  148773 bash_list.sh  148156 dev
148771 b.tar  148657 bash   148154 bin           148155 workspace

ls -q,
当遇到不可打印字符(即控制字符)时以?替代


4) 控制排序

ls -r
反向排序

ls -U                      
不排序,按照目录顺序列举条目

ls -f
不排序,开启-aU,关闭-ls --color,即ls -fl中的l会失效

ls -lS 
-S参数指示用文件和目录的大小排序

ls -lt 
-t参数指示用文件和目录的更改时间排序

ls -X 
以文件和目录的扩展名按照字母顺序排序

ls -v 
以版本顺序排序

5) 递归列举

ls -R
递归列举子目录