1.普通文件(-)
Linux中的普通文件指的是文本、二进制、压缩文件等等。 使用 ls -l 命令后,第一列第一个字符为 “-” 的文件为普通文件如: 在用户的家目录输入:
[root@localhost ~]# touch a
[root@localhost ~]# ls -l
总用量 8
-rw-r--r--. 1 root root 0 3月 9 22:28 a
-rw-------. 1 root root 1221 2月 28 23:09 anaconda-ks.cfg
-rw-r--r--. 1 root root 152 3月 9 22:28 a.zip
touch是创建文件的命令。默认你的系统里没有zip文件,如果你想要测试的话你可以先安装zip工具:
yum install zip
然后把你创建好的a文件打包成a.zip:
zip a.zip a
2. 目录(d)
就是我们认为的目录喽。就像window上的文件夹一样。 使用 ls -l 命令查看,第一个字符为”d”(directory):
[root@localhost ~]# mkdir dir
[root@localhost ~]# ls -l
总用量 8
-rw-r--r--. 1 root root 0 3月 9 22:28 a
-rw-------. 1 root root 1221 2月 28 23:09 anaconda-ks.cfg
-rw-r--r--. 1 root root 152 3月 9 22:28 a.zip
drwxr-xr-x. 2 root root 6 3月 9 22:30 dir
mkdir是创建目录的命令,mkdir dir是创建一个dir目录的意思。
3. 软链接文件(l)
软链接就像window的快捷方式一样。 使用 ls -l 命令查看,第一个符号为 “l”且文件名显示具体指向的位置。
[root@localhost ~]# ln -s a a.link
[root@localhost ~]# ls -l
总用量 8
-rw-r--r--. 1 root root 0 3月 9 22:28 a
lrwxrwxrwx. 1 root root 1 3月 9 22:34 a.link -> a
-rw-------. 1 root root 1221 2月 28 23:09 anaconda-ks.cfg
-rw-r--r--. 1 root root 152 3月 9 22:28 a.zip
drwxr-xr-x. 2 root root 6 3月 9 22:30 dir
ln -s是创作软连接的命令。ln -s a a.link意思是制作一个a的快捷方式a.link,访问a.link实际就是访问a。
4. 块设备(b)
块设备文件一般指硬盘、软盘等存储设备。使用 ls -l 命令查看,块设备文件的第一个字符是 “b”(block)。我们安装虚拟机,进行分区的时候,那些磁盘就在/dev目录下:
[root@localhost ~]# fdisk -l
Disk /dev/sda:8 GiB,8589934592 字节,16777216 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0xfbca6cfd
设备 启动 起点 末尾 扇区 大小 Id 类型
/dev/sda1 * 2048 1026047 1024000 500M 83 Linux
/dev/sda2 1026048 5220351 4194304 2G 82 Linux swap / Solaris
/dev/sda3 5220352 16777215 11556864 5.5G 83 Linux
[root@localhost ~]# ls -l /dev/sda1
brw-rw----. 1 root disk 8, 1 3月 9 22:26 /dev/sda1
fdisk -l命令是列出分区表的意思。fdisk -l的结果可以看到我们分的三个分区:boot分区(sda1),swap分区(sda2),sda3(根分区)。 ls -l /dev/sda1看到它是以‘b’开始的块设备。
5. 字符设备(c)
这个不太好理解,最开始就跳过吧,感兴趣的自己去研究一下好了。在/dev下有比较多的这个文件类型:
[root@localhost ~]# ls -l /dev
总用量 0
crw-r--r--. 1 root root 10, 235 3月 9 22:26 autofs
drwxr-xr-x. 2 root root 140 3月 9 22:26 block
drwxr-xr-x. 2 root root 80 3月 9 22:26 bsg
6. 管道文件(p)
管道文件主要用于进程间通信,使用 ls -l 命令查看,第一个字符为 “p”(pipe)。可以使用 mkfifo 命令来创建一个管道文件:
[root@localhost ~]# mkfifo pipe
[root@localhost ~]# ls -l
prw-r--r--. 1 root root 0 3月 9 22:48 pipe
7. 套接字文件(s)
套接字文件主要用于通信,特别是在网络上 。ls -l 命令查看,第一个符为 “s”(socket):
[root@VM-24-12-centos proc]# ls /var/spool/postfix/public/ -l
total 0
srw-rw-rw- 1 postfix postfix 0 Jul 28 2022 cleanup
srw-rw-rw- 1 postfix postfix 0 Jul 28 2022 flush
srw-rw-rw- 1 postfix postfix 0 Jul 28 2022 pickup
srw-rw-rw- 1 postfix postfix 0 Jul 28 2022 qmgr
srw-rw-rw- 1 postfix postfix 0 Jul 28 2022 showq
这节课我们用到了几个命令:fdisk,yum,zip,mkdir。大家先不用掌握,后面我们会一步一步讲到。这里,我们了解Linux有这几个文件类型就好了。