08-Linux基础入门(六)-文件和目录的属性及权限之文件类型、文件扩展名及文件权限基础

一、Linux中的文件类型
在Linux系统中,可以说一切(包括目录、普通文件、设备文件等)皆为文件。文件类型包含有普通文件、目录、字符设备文件、设备文件、符号链接文件、管道文件等等,当执行ls -l 或ls - al命令后可显示当前目录下的所有文件及文件夹:

    [[email protected] ~]# ls -l
    总用量 40
    -rw-------. 1 root root  1140 2月   5 04:28 anaconda-ks.cfg
    -rw-r--r--. 1 root root 21736 2月   5 04:28 install.log
    -rw-r--r--. 1 root root  5890 2月   5 04:25 install.log.syslog

其中,第一列的第一个字符就是用来区分文件类型的,常见的文件类型如下表所示:

d(directory)    表示这是一个目录,在ext2fs中,目录是一个特殊文件。
-(regular file) 表示这是一个普通的文件。
l(link) 表示这是一个符号链接文件,实际上它指向另一个文件。
b(bock) 表示块设备和其他的外围设备,是特殊类型的文件。
c(character)    表示字符设备文件。
s(socket)   表示socket文件。
p(name pipe)    表示管道文件。


二、文件类型分别介绍
1、普通文件(regular file)
在Linux中,以-开头的文件就表示普通文件。这些文件一般是用相关的应用程序或系统命令创建,比如touch、cp、tar、echo、cat等。普通文件的删除方式可以使用rm命令。
普通文件大略还可以分为:
①纯文本文件(ascll):文件内容可以直接读到数据,例如:字母、数字、特殊符号等。可以用cat命令读文件,比如配置文件几乎都是这种类型的。
②二进制文件(binary):Linux中的命令文件就属于这个格式。例如cat命令就是一个二进制文件。
③数据格式文件(data):有些程序在运行的过程中会读取某些特定格式的文件,那些特定格式的文件可以被称为数据文件。例如:Linux在用户登录时,都会将登录的数据记录在/var/log/wtmp(last命令的数据库文件)那个文件内,该文件时一个数据文件。通过last命令读出来,cat命令会读出乱码,因为他书序一种特殊格式文件。lastlog(/var/log/lastlog)
补充:通过file命令可以查看文件类型
[[email protected] ~]# file /bin/cat
/bin/cat: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, stripped
2、目录文件(directory)
在Linux中,以d字符开头的文件就表示目录。创建目录的命令可以用mkdir命令或cp命令(带-r或-a参数),cp可以把一个目录复制为另一个目录。删除目录用rm -r或rmdir(删除空目录才可以)命令。
3、字符设备或块设备文件
若第一个字符为c,则代表字符设备文件,例如猫等串口设备;若第一个字符是b,则表示块设备,例如硬盘、光驱等都属于块设备。我们可以用find /dev -type b |xargs ls -l查看块设备,用find /dev -type c |xargs ls -l查看字符设备。
4、套接字(socket)文件
在Linux中,以.socket为后缀的文件表示套接字文件,一般用于网络通信。
5、符号链接文件
符号链接文件也被称之为软链接文件,可以理解为Windows中的快捷方式。
6、管道文件(FIFO.pipe)
在Linux中,若第一个字符为p则代表管道文件。FIFO(fifo-first-in first-out)是一个特殊的文件类型,主要是解决多个程序同时访问一个文件所造成的错误。



三、Linux下常用的扩展名的作用
一般来说,Linux是不区分扩展名的。但是扩展名也代表一定的意义,例如:
①.tar(.tar.gz、.tgz、.zip、.tar.bz)表示压缩文件,创建命令一般为tar、gzip、unzip等。
②.sh表示shell脚本文件,通过shell语言开发的程序。
③.pl表示perl语言文件,通过perl语言开发的程序。
④.py表示python语言文件,通过python语言开发的程序。
⑤.html(.htm)、.php、.jsp、.do表示网页语言的文件。
⑥.conf表示系统的配置文件。
⑦.rpm表示rpm安装包文件。



四、文件权限基础

在Linux文件权限中,总共有十位,第0位表示文件类型,后9位表示文件权限。
1、关于每部分权限的解释:
第一部分(第1-3位):属主权限位(user权限位),供主人(自己)使用。
第二部分(第4-6位):属组权限位(group权限位),供小组(你亲近的人)使用。
第三部分(第7-9位): 其它用户权限位,供其他人使用。



2、关于权限掩码的解释:

r(read) 读   4
w(write)    写   2
x (execute) 执行  1
-   没有权限    0


3、关于权限掩码的计算:
将三部分权限相加,若完全权限为4+2+1=7,若只需要读写权限为4+2+0=6,若只需要读和执行权限为4+0+1=5。
上图的权限为755,分解计算如下算式所示:
7(=4+2+1)5(=4+0+1)5(=4+0+1)



欢迎关注
新浪微博:https://weibo.com/yougazhang0506
微信公众平台:张雨嘉

我的网站:http://www.zhangyujia.cn
51CTO博客:http://blog.51cto.com/11099293
CSDN博客:http://blog.csdn.net/u013260195
GitHub:https://github.com/zhangyujia0506/

原文地址:http://blog.51cto.com/11099293/2069311

时间: 2024-07-29 06:50:26

08-Linux基础入门(六)-文件和目录的属性及权限之文件类型、文件扩展名及文件权限基础的相关文章

(转)Linux 文件和目录的属性

原文:https://www.cnblogs.com/kzloser/articles/2673790.html https://www.cnblogs.com/danh/archive/2011/01/11/1932975.html 内容源于: 鸟哥的linux私房菜 链接如下: Linux 的文件权限与目录配置 Linux 磁盘与文件系统管理 Linux 文件与目录管理 目录 Linux文件属性 [文件属性解析(SUID/SGID/SBIT)][隐藏属性]修改文件属性 [chgrp][cho

Linux文件和目录的属性及权限

本文介绍Linux系统的文件和目录的属性及权限,比如索引节点 inode.文件类型.文件权限及属主,还对setuid.getgid及粘贴位进行相关的介绍.其中,对ln.chmod.chown.chgrp.umask等命令的用法进行详细的说明和举例. Linux中的文件 文件属性相概述 Linux系统中文件或目录的属性主要包括:文件或目录的索引节点(inode).类型.权限属性.链接数.所归属的用户和用户组.最近修改时间等内容: 看下执行 ls -lhi 命令的结果     详细解释图: 文字解释

linux文件和目录的属性及硬链接与软连接

1.文件属性概述 linux系统中的文件或目录的属性主要包括:索引节点(inode).文件类型.权限属性.链接数.所归属的用户和用户组.最近修改的时间等内容. 我们用ls –lhi命令查看一下结果,也可以用stat详细查看文件属性. [[email protected] ~]# ls -lhi total 92K 400420 -rw-------. 1 root root 1.1K Jun 14 05:02 anaconda-ks.cfg 400431 -rw-r--r--. 1 root r

linux下文件和目录的属性

linux下文件或目录的属性 [[email protected] ~]# ls -l -rw-r--r--. 1 root root      9119 Nov 13 09:29 install.log drwxr-xr-x. 2 root root      4096 Mar 17 13:50 test #列出当前所有的目录 ^d代表以d开头的类型 [[email protected] ~]# ls -l |grep '^d'     drwxr-xr-x. 2 root root     

java基础知识回顾之javaIO类--File类应用:获取指定目录下面的指定扩展名的文件,将文件的绝对路径写入到目的文件当中

/** * File文件综合应用 * 需求:获取指定目录下面,指定扩展名的文件,将文件的绝对路径写到文本文件当中. *  * 思路:1.需要深度遍历.--递归 * 2.遍历的过程中过滤指定扩展名的文件--过滤器FileNameFilter,将文件存入容器中 * 3.将容器中的内容遍历,写入到指定文件中 * */ 代码:  FilenameFilter 过滤器: package com.lp.ecjtu.File.filter; import java.io.File; import java.i

【转】每天一个linux命令(24):Linux文件类型与扩展名

原文网址:http://www.cnblogs.com/peida/archive/2012/11/22/2781912.html Linux文件类型和Linux文件的文件名所代表的意义是两个不同的概念.我们通过一般应用程序而创建的比如file.txt.file.tar.gz ,这些文件虽然要用不同的程序来打开,但放在Linux文件类型中衡量的话,大多是常规文件(也被称为普通文件). 一. 文件类型 Linux文件类型常见的有:普通文件.目录文件.字符设备文件和块设备文件.符号链接文件等,现在我

Linux文件类型与扩展名

Linux文件类型和Linux文件的文件名所代表的意义是两个不同的概念.我们通过一般应用程序而创建的比如file.txt.file.tar.gz ,这些文件虽然要用不同的程序来打开,但放在Linux文件类型中衡量的话,大多是常规文件(也被称为普通文件). 一. 文件类型 Linux文件类型常见的有:普通文件.目录文件.字符设备文件和块设备文件.符号链接文件等,现在我们进行一个简要的说明. 1. 普通文件 我们用 ls -lh 来查看某个文件的属性,可以看到有类似-rwxrwxrwx,值得注意的是

每天一个linux命令(23):Linux文件类型与扩展名

Linux文件类型和Linux文件的文件名所代表的意义是两个不同的概念.我们通过一般应用程序而创建的比如file.txt.file.tar.gz ,这些文件虽然要用不同的程序来打开,但放在Linux文件类型中衡量的话,大多是常规文件(也被称为普通文件). 一. 文件类型 Linux文件类型常见的有:普通文件.目录文件.字符设备文件和块设备文件.符号链接文件等,现在我们进行一个简要的说明. 1. 普通文件 我们用 ls -lh 来查看某个文件的属性,可以看到有类似-rwxrwxrwx,值得注意的是

每天一个linux命令(24)--Linux文件类型与扩展名

linux 文件类型和Linux 文件的文件名所代表的意义是两个不同的概念.我们通过一般应用程序而创建的比如 file.txt  file.tar.gz.这些文件虽然要用不同的程序来打开,但放在Linux 文件类型中衡量的话,大多是常规文件(也被称为普通文件). 一.文件类型 Linux 文件类型常见的有:普通文件.目录文件.字符设备文件和块设备文件.符号链接文件等,现在我们进行一个简要的说明. 1.普通文件 我们用ls -lh 来查看某个文件的属性,可以看到有类似 -rwxrwxrwx,值得注

每天一个linux命令(24):Linux文件类型与扩展名

http://www.cnblogs.com/peida/archive/2012/11/22/2781912.html Linux文件类型和Linux文件的文件名所代表的意义是两个不同的概念.我们通过一般应用程序而创建的比如file.txt.file.tar.gz ,这些文件虽然要用不同的程序来打开,但放在Linux文件类型中衡量的话,大多是常规文件(也被称为普通文件). 一. 文件类型 Linux文件类型常见的有:普通文件.目录文件.字符设备文件和块设备文件.符号链接文件等,现在我们进行一个