Linux文件管理指令
Linux文件管理指令
几种常见的文件类型
Linux 下的目录也是一种文件;但是文件也不只有目录和可执行文件两种。常见的文件类型有以下 7 种:
普通文件(比如一个文本文件);
目录文件(目录也是一个特殊的文件,它用来存储文件清单,比如/也是一个文件);
可执行文件(上面的rm就是一个可执行文件);
管道文件(我们会在 07 课时讨论管道文件);
Socket 文件(我们会在模块七网络部分讨论 Socket 文件);
软链接文件(相当于指向另一个文件所在路径的符号);
硬链接文件(相当于指向另一个文件的指针,关于软硬链接我们将在模块六文件系统部分讨论)。
使用ls -F就可以看到当前目录下的文件和它的类型。
*结尾的是可执行文件;
= 结尾的是 Socket 文件;
@ 结尾的是软链接;
| 结尾的管道文件;
没有符号结尾的是普通文件;
/ 结尾的是目录。
设备文件
Socket 是网络插座,是客户端和服务器之间同步数据的接口。其实,Linux 不只把 Socket 抽象成了文件,设备基本也都被抽象成了文件。因为设备需要不断和操作系统交换数据。而交换方式只有两种——读和写。所以设备是可以抽象成文件的,因为文件也支持这两种操作。
Linux 把所有的设备都抽象成了文件,比如说打印机、USB、显卡等。这让整体的系统设计变得高度统一。
文件的控制
touch指令本来是用来更改文件的时间戳的,但是如果文件不存在touch也会帮助创建一个空文件。
man意思是 manual,就是说明书的意思,这里指的是系统的手册。如man touch 、man man
pwd指令查看工作目录。
cd指令切换工作目录。
which指令查找一个执行文件所在的路径。
ls显示文件信息。
rm删除文件。
touch修改一个文件的时间戳,如果文件不存在会触发创建文件。
vi和nano可以用来编辑文件。
cat查看完成的文件适合小型文件。
more``less查看一个文件但是只读取用户看到的内容到内存,因此消耗资源较少,适合在服务器上看日志。
head``tail可以用来看文件的头和尾。
grep指令搜索文件内容。
find指令全局查找文件。
rm -rf
/是文件系统根目录;
rm是删除指令;
-r是 recursive(递归);
-f是 force(强制),遇到只读文件也不提示,直接删除。
所以rm -rf /就是删除整个文件系统上的所有文件,而且不用给用户提示。
搜索文件系统中所有以包含std字符串且以.h扩展名结尾的文件。
find / -iname “std.h”