【51CTO.com快译】我们都知道,一切都是Linux中的文件,包括硬盘和显卡等。浏览Linux文件系统时,大多数文件都属于常规文件和目录。但也有用于不同目的的其他文件类型,可以分为五类。因此,了解Linux中对你大有帮助的文件类型非常重要。看完全文,你就知道有多重要。
如果你不了解文件类型,无法放心地对文件进行任何更改。
如果你错误地更改、结果严重损坏系统,更改时就要小心。
文件在Linux中非常重要,因为所有设备和守护程序都以文件的形式存储在Linux系统中。
Linux中有多少类型的文件?
据我所知,Linux中共有7种类型的文件可用,分三大类。详情如下。
1. 常规文件
2 .目录文件
3. 特殊文件(此类共有5种类型的文件)
- 链接文件
- 字符设备文件
- 套接字文件
- 命名管道文件
- 块文件
参阅下表以更好地了解Linux中的文件类型。
方法1:识别Linux中文件类型的手动方法
如果你深入了解Linux,很容易借助上面这张表来识别文件类型。
- 如何查看Linux中的常规文件?
使用下列命令查看Linux中的常规文件。常规文件在Linux文件系统中非常普遍。常规文件的颜色是白色。
- # ls -la | grep ^-
- -rw-------. 1 mageshm mageshm 1394 Jan 18 15:59 .bash_history
- -rw-r--r--. 1 mageshm mageshm 18 May 11 2012 .bash_logout
- -rw-r--r--. 1 mageshm mageshm 176 May 11 2012 .bash_profile
- -rw-r--r--. 1 mageshm mageshm 124 May 11 2012 .bashrc
- -rw-r--r--. 1 root root 26 Dec 27 17:55 liks
- -rw-r--r--. 1 root root 104857600 Jan 31 2006 test100.dat
- -rw-r--r--. 1 root root 104874307 Dec 30 2012 test100.zip
- -rw-r--r--. 1 root root 11536384 Dec 30 2012 test10.zip
- -rw-r--r--. 1 root root 61 Dec 27 19:05 test2-bzip2.txt
- -rw-r--r--. 1 root root 61 Dec 31 14:24 test3-bzip2.txt
- -rw-r--r--. 1 root root 60 Dec 27 19:01 test-bzip2.txt
- 如何查看Linux中的目录文件?
使用下列命令查看Linux中的目录文件。目录文件在Linux文件系统中非常普遍。目录文件的颜色是蓝色。
- # ls -la | grep ^d
- drwxr-xr-x. 3 mageshm mageshm 4096 Dec 31 14:24 links/
- drwxrwxr-x. 2 mageshm mageshm 4096 Nov 16 15:44 perl5/
- drwxr-xr-x. 2 mageshm mageshm 4096 Nov 16 15:37 public_ftp/
- drwxr-xr-x. 3 mageshm mageshm 4096 Nov 16 15:37 public_html/
- 如何查看Linux中的链接文件?
使用下列命令查看Linux中的链接文件。链接文件在Linux文件系统中非常普遍。链接文件有两种类型:软链接和硬链接。链接文件的颜色是浅绿蓝。
- # ls -la | grep ^l
- lrwxrwxrwx. 1 root root 31 Dec 7 15:11 s-link-file -> /links/soft-link/test-soft-link
- lrwxrwxrwx. 1 root root 38 Dec 7 15:12 s-link-folder -> /links/soft-link/test-soft-link-folder
- 如何查看Linux中的字符设备文件?
使用下列命令查看Linux中的字符设备文件。字符设备文件只出现在特定的位置。它在/dev目录下。字符设备文件的颜色是黄色。
- # ls -la | grep ^c
- crw-------. 1 root root 5, 1 Jan 28 14:05 console
- crw-rw----. 1 root root 10, 61 Jan 28 14:05 cpu_dma_latency
- crw-rw----. 1 root root 10, 62 Jan 28 14:05 crash
- crw-rw----. 1 root root 29, 0 Jan 28 14:05 fb0
- crw-rw-rw-. 1 root root 1, 7 Jan 28 14:05 full
- crw-rw-rw-. 1 root root 10, 229 Jan 28 14:05 fuse
- 如何查看Linux中的块文件?
使用下列命令查看Linux中的块文件。块文件只出现在特定的位置。它在/dev目录下。块文件的颜色是黄色。
- # ls -la | grep ^b
- brw-rw----. 1 root disk 7, 0 Jan 28 14:05 loop0
- brw-rw----. 1 root disk 7, 1 Jan 28 14:05 loop1
- brw-rw----. 1 root disk 7, 2 Jan 28 14:05 loop2
- brw-rw----. 1 root disk 7, 3 Jan 28 14:05 loop3
- brw-rw----. 1 root disk 7, 4 Jan 28 14:05 loop4
- 如何查看Linux中的套接字文件?
使用下列命令查看Linux中的套接字文件。套接字文件只出现在特定的位置。字符设备文件的颜色是粉红色。
- # ls -la | grep ^s
- srw-rw-rw- 1 root root 0 Jan 5 16:36 system_bus_socket
- 如何查看Linux中的命名管道文件?
使用下列命令查看Linux中的命名管道文件。命名管道文件只出现在特定的位置。命名管道文件的颜色是黄色。
- # ls -la | grep ^p
- prw-------. 1 root root 0 Jan 28 14:06 replication-notify-fifo|
- prw-------. 1 root root 0 Jan 28 14:06 stats-mail|
方法2:如何使用file命令识别Linux中的文件类型?
file命令让我们可以确定Linux中的各种文件类型。有三组测试,按这个顺序执行:文件系统测试、魔法测试和语言测试,以识别文件类型。
- 如何使用file命令查看常规文件?
只要在终端上输入file命令,后面跟上常规文件。file命令会读取特定文件的内容,显示它到底是哪种文件。
这就是为什么我们看到每种常规文件有不同的结果。请看常规文件的下列不同值。
- # file 2daygeek_access.log
- 2daygeek_access.log: ASCII text, with very long lines
- # file powertop.html
- powertop.html: HTML document, ASCII text, with very long lines
- # file 2g-test
- 2g-test: JSON data
- # file powertop.txt
- powertop.txt: HTML document, UTF-8 Unicode text, with very long lines
- # file 2g-test-05-01-2019.tar.gz
- 2g-test-05-01-2019.tar.gz: gzip compressed data, last modified: Sat Jan 5 18:22:20 2019, from Unix, original size 450560
- 如何使用file命令查看Linux中的目录文件?
只要在终端上输入file命令,后面跟上目录文件。请看下列结果。
- # file Pictures/
- Pictures/: directory
- 如何使用file命令查看链接文件?
只要在终端上输入file命令,后面跟上链接文件。请看下列结果。
- # file log
- log: symbolic link to /run/systemd/journal/dev-log
•如何使用file命令查看Linux中的字符设备文件?
只要在终端上输入file命令,后面跟上字符设备文件。请看下列结果。
- # file vcsu
- vcsu: character special (7/64)
- 如何使用file命令查看Linux中的块文件?
只要在终端上输入file命令,后面跟上块文件。请看下列结果。
- # file sda1
- sda1: block special (8/1)
- 如何使用file命令查看Linux中的套接字文件?
只要在终端上输入file命令,后面跟上套接字文件。请看下列结果。
- # file sda1
- sda1: block special (8/1)
- 如何使用file命令查看Linux中的命名管道文件?
只要在终端上输入file命令,后面跟上命名管道文件。请看下列结果。
- # file pipe-test
- pipe-test: fifo (named pipe)
方法3:如何使用stat命令识别Linux中的文件类型?
stat命令让我们可以查看文件类型或文件系统状态。这个实用程序获取的信息比file命令更多。它显示了特定文件的大量信息,比如大小、块大小、IO块大小、Inode值、链接、文件权限、UID、GID、文件访问、修改和更改时间信息。
- 如何使用stat命令查看Linux中的常规文件?
只要在终端上输入stat命令,后面跟上常规文件。
- # stat 2daygeek_access.log
- File: 2daygeek_access.log
- Size: 14406929 Blocks: 28144 IO Block: 4096 regular file
- Device: 10301h/66305d Inode: 1727555 Links: 1
- Access: (0644/-rw-r--r--) Uid: ( 1000/ daygeek) Gid: ( 1000/ daygeek)
- Access: 2019-01-03 14:05:26.430328867 +0530
- Modify: 2019-01-03 14:05:26.460328868 +0530
- Change: 2019-01-03 14:05:26.460328868 +0530
- Birth: -
- 如何使用stat命令查看Linux中的目录文件?
只要在终端上输入stat命令,后面跟上目录文件。请看下列结果。
- # stat Pictures/
- File: Pictures/
- Size: 4096 Blocks: 8 IO Block: 4096 directory
- Device: 10301h/66305d Inode: 1703982 Links: 3
- Access: (0755/drwxr-xr-x) Uid: ( 1000/ daygeek) Gid: ( 1000/ daygeek)
- Access: 2018-11-24 03:22:11.090000828 +0530
- Modify: 2019-01-05 18:27:01.546958817 +0530
- Change: 2019-01-05 18:27:01.546958817 +0530
- Birth: -
- 如何使用stat命令查看Linux中的链接文件?
只要在终端上输入stat命令,后面跟上链接文件。请看下列结果。
- # stat /dev/log
- File: /dev/log -> /run/systemd/journal/dev-log
- Size: 28 Blocks: 0 IO Block: 4096 symbolic link
- Device: 6h/6d Inode: 278 Links: 1
- Access: (0777/lrwxrwxrwx) Uid: ( 0/ root) Gid: ( 0/ root)
- Access: 2019-01-05 16:36:31.033333447 +0530
- Modify: 2019-01-05 16:36:30.766666768 +0530
- Change: 2019-01-05 16:36:30.766666768 +0530
- Birth: -
- 如何使用stat命令查看Linux中的字符设备文件?
只要在终端上输入stat命令,后面跟上字符设备文件。请看下列结果。
- # stat /dev/vcsu
- File: /dev/vcsu
- Size: 0 Blocks: 0 IO Block: 4096 character special file
- Device: 6h/6d Inode: 16 Links: 1 Device type: 7,40
- Access: (0660/crw-rw----) Uid: ( 0/ root) Gid: ( 5/ tty)
- Access: 2019-01-05 16:36:31.056666781 +0530
- Modify: 2019-01-05 16:36:31.056666781 +0530
- Change: 2019-01-05 16:36:31.056666781 +0530
- Birth: -
- 如何使用stat命令查看Linux中的块文件?
只要在终端上输入stat命令,后面跟上块文件。请看下列结果。
- # stat /dev/sda1
- File: /dev/sda1
- Size: 0 Blocks: 0 IO Block: 4096 block special file
- Device: 6h/6d Inode: 250 Links: 1 Device type: 8,1
- Access: (0660/brw-rw----) Uid: ( 0/ root) Gid: ( 994/ disk)
- Access: 2019-01-05 16:36:31.596666806 +0530
- Modify: 2019-01-05 16:36:31.596666806 +0530
- Change: 2019-01-05 16:36:31.596666806 +0530
- Birth: -
- 如何使用stat命令查看Linux中的套接字文件?
只要在终端上输入stat命令,后面跟上套接字文件。请看下列结果。
- # stat /var/run/dbus/system_bus_socket
- File: /var/run/dbus/system_bus_socket
- Size: 0 Blocks: 0 IO Block: 4096 socket
- Device: 15h/21d Inode: 576 Links: 1
- Access: (0666/srw-rw-rw-) Uid: ( 0/ root) Gid: ( 0/ root)
- Access: 2019-01-05 16:36:31.823333482 +0530
- Modify: 2019-01-05 16:36:31.810000149 +0530
- Change: 2019-01-05 16:36:31.810000149 +0530
- Birth: -
- 如何使用stat命令查看Linux中的命名管道文件?
只要在终端上输入stat命令,后面跟上命名管道文件。请看下列结果。
- # stat pipe-test
- File: pipe-test
- Size: 0 Blocks: 0 IO Block: 4096 fifo
- Device: 10301h/66305d Inode: 1705583 Links: 1
- Access: (0644/prw-r--r--) Uid: ( 1000/ daygeek) Gid: ( 1000/ daygeek)
- Access: 2019-01-06 02:00:03.040394731 +0530
- Modify: 2019-01-06 02:00:03.040394731 +0530
- Change: 2019-01-06 02:00:03.040394731 +0530
- Birth: -
【51CTO译稿,合作站点转载请注明原文译者和出处为51CTO.com】