前言
在Linux中一切都是文件,但文件都得又类型。
Linux中如何查看文件类型
那如何查看文件是什么类型呢?在Linux中可以使用以下命令:
ls -l /path
ll /path
eg:
[root@rhel8-3 /]# ls -l /home/redhat/
总用量 0
-rw-r--r--. 1 root root 0 9月 9 10:51 1.txt
我们经常使用的ll并不是真正意义上的命令,而是ls -l的别名!
Linux文件属性剖析
在显示文件的属性通常会以如下形式进行显示:
drwxr-xr-x
d 目录文件
rwx 主⼈
r-x 组员
r-x 其他
一共10个字母,分别代表什么含义呢?
第1个字母:代表文件类型
第2~4个字母:代表用户的权限(属主)
第5~7个字母:代表用户组的权限(属组)
第8~10个字母:代表其他的用户的权限(其他)
Linux中常见的文件类型
在Linux常见的文件类型又七种,分别如下所示:
文件属性 | 文件类型 |
---|---|
- | 常规文件,即file |
d | 目录文件 |
b | block device 即块设备文件,如硬盘;支持以block为单位进行随机访问 |
c | character device 即字符设备文件,串行端口设备,顺序读写,键盘 |
l | symbolic link 即符号链接文件,又称软链接文件 |
p | pipe 即命名管道文件,用于进程间的通信 |
s | socket 即套接字文件,通常用于网络上的通信;可以启动一个程序来监听客户端的要求,客户端可以通过套接字来进行数据通信 |
Linux中创建不同类型文件对应的命令
需创建的文件类型 | 命令 |
---|---|
普通文件 | touch regular |
目录文件 | mkdir directory |
符号链接文件 | ln -s ./regular symbolic |
名管道文件 | mkfifo /tmp/testp 或者 mknod /tmp/filo p |
字符特殊文件 | mknod character c 1 1 |
块特殊文件 | mksock sock(如果没有mksock命令,使用nc命令进行创建:nc -UI ./sock) |