Linux文件属性信息
在 Linux 中,ls
命令用于列出目录内容,并提供了许多参数以定制输出和显示不同类型的信息。以下是一些常用的ls
命令参数
-a | 显示所有文件和目录,包括以. 开头的隐藏文件。 |
---|---|
-l | 使用长格式列出文件和目录的详细信息,包括权限、所有者、大小、最后修改时间等。 |
-h | 与-l 参数一起使用时,以人类可读的格式显示文件大小(例如,K、M、G表示千字节、兆字节、吉字节)。 |
-F | 在目录后面添加/ 字符,以便更容易区分文件和目录。 |
–color | 使用颜色来区分不同类型的文件。 |
-R | 递归地列出子目录中的内容。 |
-A | 列出所有以. 开头的隐藏文件,但不包括. 和.. 。 |
-i | 显示文件和目录的inode号。 |
-t | 根据最后修改时间对文件和目录进行排序,最近的排在最前面 |
-p | 在每个目录后面添加/ 字符。 |
此外,ls
命令还支持与模式匹配一起使用的通配符,如*
、?
和[]
,用于过滤列出的文件和目录。
例如,要列出当前目录下所有以.txt
结尾的文件,可以使用ls *.txt
。
这只是ls
命令参数的一部分,实际上还有更多的参数和选项可供使用。要获取完整的参数列表和详细说明,可以查看ls
命令的手册页,通过在终端中输入man ls
命令来访问。
一、Linux文件权限
每个Linux文件具有四种访问权限:可读(r)
、可写(w)
、可执行(x)
和无权限(-)
。
利用ls -l
命令可以看到某个文件或目录的权限,它以显示数据的第一个字段为准。
第一个字段由10个字符组成,如下:
-rwxr-xr-x
下面讲解一下各自的含义:
- 1位表示文件类型,代表的是文件类型,可以是常规文件-、目录d、符号链接l或其他类型的文件
- 2-4位 rwx 代表的是所有者的权限,也就是常说的u权限(user)
- 5-7位 r-x 代表的是同一群组的权限,g权限(group)
- 8-10位 r-x代表的是其他用户的权限 ,o权限(other)
- 2-10位的权限总和有时称为 a 权限
上面-rwxr-xr-x
这个例子表示:
这是一个文件(非目录),文件所有者具有读、写和执行的权限;所有者所属组成员和所属组之外的用户具有读和执行的权限而没有写的权限。
eg: 创建 index.txt 文件, 给所属组与其它用户增加 读、执行的权限
用数字表示法修改权限
所谓数字表示法,是指将r、w和x分别用4、2、1来代表,没有授予权限的则为0,
然后把权限相加,如下:
原始权限 | 转换为数字 | 数字表示法 |
---|---|---|
rwxrwxr-x | (421)(421)(401) | 775 |
rwxr-xr-x | (421)(401)(401) | 755 |
echo hello world > index.txt
chmod 755 index.txt
二、Linux目录权限
目录权限的修改和文件权限修改不同
代表的含义如下:
- r:可列出目录中的内容
- w:可在目录中创建、删除和修改文件
- x:可以使用cd命令切换到此目录
- -:没有任何此目录的访问权限
小技巧:目录可以使用通配符"*"来表示目录中的所有文件
举个例子
将/code目录中的所有文件的权限设置为任何人都可以读写:
数字表示法
chmod 666 /code/*