1、七种文件类型

普通文件类型

Linux中最多的一种文件类型, 包括 纯文本文件(ASCII);二进制文件(binary);数据格式的文件(data);各种压缩文件.第一个属性为 [-]

目录文件

就是目录, 能用 # cd 命令进入的。第一个属性为 [d],例如 [drwxrwxrwx]

块设备文件

块设备文件 : 就是存储数据以供系统存取的接口设备,简单而言就是硬盘。例如一号硬盘的代码是 /dev/hda1等文件。第一个属性为 [b]

字符设备

字符设备文件:即串行端口的接口设备,例如键盘、鼠标等等。第一个属性为 [c]

套接字文件

这类文件通常用在网络数据连接。可以启动一个程序来监听客户端的要求,客户端就可以通过套接字来进行数据通信。第一个属性为 [s],最常在 /var/run目录中看到这种文件类型

管道文件

FIFO也是一种特殊的文件类型,它主要的目的是,解决多个程序同时存取一个文件所造成的错误。FIFO是first-in-first-out(先进先出)的缩写。第一个属性为 [p]

链接文件

类似Windows下面的快捷方式。第一个属性为 [l],例如 [lrwxrwxrwx]

2、查看文件类型的三种方法



ls-l/ls-ld 或者ll [ls-l ---查看文件 ls-ld ---查看路径 ll ----跟ls -l 一样]

 ll anaconda-ks.cfg                       //看第一个字符
-rw-------. 1 root root 2460 6月 1 23:37 anaconda-ks.cfg
[root@localhost log]# ls -ld /etc
drwxr-xr-x. 81 root root 4096 Jan 29 03:25 /etc



file 命令

[root@localhost data]# file a.txt
a.txt: ASCII text



stat 命令

[root@localhost data]# stat a.txt      //查看文件的详细属性(其中包括文件时间属性)
File: `a.txt'
Size: 3 Blocks: 8 IO Block: 4096 regular file
Device: 803h/2051d Inode: 544365 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2018-01-28 20:56:01.965885036 +0800
Modify: 2018-01-28 20:55:27.181876154 +0800
Change: 2018-01-28 20:55:27.181876154 +0800

3、Linux中文件扩展名

windows里通过扩展名来区分文件类型的。linux里文件扩展名和文件类型没有关系。但为了容易区分和兼容用户使用windows的习惯,我们还是会用扩展名来表示文件类型。举例如下:

● 源码.tar、.tar.gz、.tgz、.zip、.tar.bz表示压缩文件,创建命令一般为tar,gzip,zip等。

● .sh表示shell脚本文件,通过shell语言开发的程序。

● .pl表示perl语言文件,通过perl语言开发的程序。

● .py表示python语言文件,通过python语言开发的程序。

● .html、.htm、.php、.jsp、.do表示网页语言的文件。

● .conf表示系统服务的配置文件。

● .rpm表示rpm安装包文件。

4、文件属性

[root@localhost /]# ls -lhi
total 90K
12 dr-xr-xr-x. 2 root root 4.0K Jan 28 18:30 bin
2 dr-xr-xr-x. 5 root root 1.0K Aug 7 2016 boot
4 drwxr-xr-x. 18 root root 3.7K Jan 29 01:29 dev
652802 drwxr-xr-x. 81 root root 4.0K Jan 29 03:25 etc
130563 drwxr-xr-x. 3 root root 4.0K Jan 29 00:57 home
13 dr-xr-xr-x. 12 root root 4.0K Jan 28 18:30 lib
391685 dr-xr-xr-x. 9 root root 12K Jan 28 18:30 lib64
11 drwx------. 2 root root 16K Aug 7 2016 lost+found
130564 drwxr-xr-x. 2 root root 4.0K Sep 23 2011 media
391689 drwxr-xr-x. 2 root root 4.0K Sep 23 2011 mnt
130565 drwxr-xr-x. 3 root root 4.0K Aug 7 2016 opt
1 dr-xr-xr-x. 97 root root 0 Jan 29 2018 proc
391682 dr-xr-x---. 2 root root 4.0K Jan 28 21:08 root
130566 dr-xr-xr-x. 2 root root 12K Jan 28 18:30 sbin
1 drwxr-xr-x. 7 root root 0 Jan 29 2018 selinux
15 drwxr-xr-x. 2 root root 4.0K Sep 23 2011 srv
1 drwxr-xr-x. 13 root root 0 Jan 29 2018 sys
522242 drwxrwxrwt. 5 root root 4.0K Jan 29 05:15 tmp
522244 drwxr-xr-x. 14 root root 4.0K Jan 28 20:04 usr
261121 drwxr-xr-x. 20 root root 4.0K Aug 7 2016 var

544365 -rw-r--r--. 1 root root 3 Jan 28 20:55 a.txt

inode 索引节点编号:544365

文件类型 :文件类型是'-',表示这是一个普通文件

文件权限:rw-r--r-- 表示文件可读、可写、可执行,文件所归属的用户组可读可执行,其他用户可读可执行

硬链接个数 表示a.txt这个文件没有其他的硬链接,因为连接数是1,就是他本身

文件属主 表示这个文件所属的用户,这里的意思是a.txt文件被root用户拥有,是第一个root

文件属组 表示这个文件所属的用户组,这里表示a.txt文件属于root用户组,是第二个root

文件大小 文件大小是3个字节

文件修改时间 这里的时间是该文件最后被更新(包括文件创建、内容更新、文件名更新等)的时间可用如下命令查看文件的修改、访问、创建时间

[root@localhost data]# stat a.txt
File: `a.txt'
Size: 3 Blocks: 8 IO Block: 4096 regular file
Device: 803h/2051d Inode: 544365 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2018-01-28 20:56:01.965885036 +0800 ----------访问时间
Modify: 2018-01-28 20:55:27.181876154 +0800 ----------修改时间
Change: 2018-01-28 20:55:27.181876154 +0800 ----------创建时间

索引节点inode

硬盘分区,格式化、创建文件系统

被格式化的磁盘分为两部分:第一部分是Inode 第二部分是block

block是用来存储实际数据用的,例如:照片、视频等普通文件数据

inode是用来存储这些数据的属性的(也就是ls-l的结果)

inode包含的属性信息有文件大小、属主、归属的用户组、读写权限、问价类型、修改时间,还有指向文件实体指针的功能(inode节点----block的对应关系),但是唯独不包含文件名



访问一个文件【通过文件名找到inode---->block 】



查看inode 大小

[root@localhost ~]# dumpe2fs /dev/sda1|grep -i "Inode size"
dumpe2fs 1.41.12 (17-May-2010)
Inode size: 128

Linux下七种文件类型、文件属性及其查看方法的更多相关文章

  1. 【Linux】七种文件类型

    Linux中的七种文件类型 d 目录文件. l 符号链接(指向另一个文件). s 套接字文件. b 块设备文件,二进制文件. c 字符设备文件. p 命名管道文件. - 普通文件

  2. linux的七种文件类型

    d 目录 - 普通文件 l 符号链接 s 套接字文件 b 块设备文件 二进制文件 c 字符设备文件 p 命名管道文件

  3. Linux下几种文件传输命令

    Linux下几种文件传输命令 sz rz sftp scp 最近在部署系统时接触了一些文件传输命令,分别做一下简单记录: 1.sftp Secure Ftp 是一个基于SSH安全协议的文件传输管理工具 ...

  4. Linux下几种文件传输命令 sz rz sftp scp

    Linux下几种文件传输命令 sz rz sftp scp 最近在部署系统时接触了一些文件传输命令,分别做一下简单记录: 1.sftp Secure Ftp 是一个基于SSH安全协议的文件传输管理工具 ...

  5. [原创] Linux下几种文件传输命令 sz rz sftp scp介绍

    Linux下几种文件传输命令 sz rz sftp scp介绍 1.sftp Secure Ftp 是一个基于SSH安全协议的文件传输管理工具.由于它是基于SSH的,会在传输过程中对用户的密码.数据等 ...

  6. day59:Linux:编辑工具vim&文件类型&文件属性

    目录 1.Linux编辑工具vim 2.Linux文件类型 3.Linux文件属性 4.今日份Linux练习题 Linux编辑工具vim 1.什么是vim 文本文件的编辑工具,  和windows的n ...

  7. Error: Linux下 mysql.sock文件丢失被删除解决方法

    在默认情况下,Mysql安装以后会在/tmp目录下生成一个mysql.sock文件,如该文件丢失则Mysql将不能够正常启动,解决方法:使用mysqld_safe 启动即可解决: #basedir:m ...

  8. Linux下查找大文件,大目录的方法

    查找大文件 //列举出当前目录所有大于800M的文件 find . -type f -size +800M 1 2 第一个方法只用到了一个命令find,它能够帮我们做一些文件查找的操作.它常用的参数有 ...

  9. screen mac linux下一种让程序后台运行的方法

    1: screen 场景的意思.字面意思就是软件运行在不同场景 (1)创建会话 使用命令“screen -S RunWork”来创建一个screen会话,命令执行之后,就会得到一个新的shell窗口, ...

  10. linux文件的3个时间和7种文件类型

    linux文件的三个时间:  atime: access time --最近访问时间. ctime: change time --最近改变时间. mtime:modify time --最近修改时间. ...

随机推荐

  1. Java中简单易懂的HashMap面试题(面试必备)

    这篇文章仅限小编个人的理解,小编不是Java方向的,只是对Java有很高的学习兴趣 如果有什么不对的地方还望大佬指点 HashMap的底层是数组+链表,(很多人应该都知道了) JDK1.7的是数组+链 ...

  2. 在Windows平台上利用CMD命令行来压缩和解压缩.tar.gz压缩包

    解压命令: tar -xzvf dwt.tar.gz -C tmp/ 上述命令将dwt.tar.gz压缩包解压到tmp/文件夹 压缩命令: tar -czvf dwt.tar.gz dwt/ 上述命令 ...

  3. Web服务器2

    Web服务器2 基于华为鲲鹏云服务器CentOS中(或Ubuntu),使用Linux Socket实现: Web服务器的客户端服务器,提交程序运行截图 实现GET即可,请求,响应要符合HTTP协议规范 ...

  4. 《Unix/Linux系统编程》第十二周学习笔记

    <Unix/Linux系统编程>第十二周学习笔记 MySQL数据库简介 MySQL是一个关系型数据库管理系统,是最流行的关系型数据库管理系统之一.在 WEB 应用方面,MySQL 是最好的 ...

  5. Json对象转换模块(自编代码JsonObject.cs)

    namespace 信息采集系统.Common { /// <summary> /// Json类型对象,用于其它Json对象继承 /// </summary> /// < ...

  6. Java学习笔记-封装Java Util包Base64方法

    懒人菜鸟入门Java系列-习惯性封装常用方法,方便开发过程中调用   注释: Java版本-1.8 1 * @Author wuwenchao 2 * @Version 1.0.0 3 * @Date ...

  7. NodeJs 版本管理

    nvm-windows 说明:nvm是Nodejs的版本管理器.在开发中项目可能需要低版本或者高版本的Nodejs运行环境,以此我们可以使用nvm来切换Nodejs的版本. 在安装NVM for Wi ...

  8. ServletConfig接口介绍

    前言: Servlet 容器初始化 Servlet 时,会为这个 Servlet 创建一个 ServletConfig 对象,并将 ServletConfig 对象作为参数传递给 Servlet .通 ...

  9. MySQL如何指定字符集和排序规则?

    在MySQL中,可以使用以下两种方式指定字符集和排序规则: 创建数据库或表时指定字符集和排序规则 在创建数据库或表时,可以使用 CHARACTER SET 和 COLLATE 选项指定字符集和排序规则 ...

  10. PO、VO、DAO、BO、DTO、POJO 之间的区别

    PO(Persistant Object),持久对象 这个对象是与数据库中的表相映射的Java对象. VO(Value Object),值对象 通常用于业务层之间的数据传递,和PO一样也是仅仅包含数据 ...