文件的基本管理

发布时间:2023年12月21日

目录

一、Linux系统目录结构和相对/绝对路径

(一)系统目录结构

(二)相对路径和绝对路径

1.绝对路径

2.相对路径

(三)通配符的作用

二、创建、复制、删除文件,rm -rf /意外事故

(一)创建文件夹

1.命令之------touch

2.命令之----vim

3.命令之-----mkdir

(二)删除文件和目录

(三)复制文件

(四)移动文件或文件夹

三、查看文件内容的命令

(一)du命令

(二)which命令

(三)find命令

1.按文件名称查找

2.按文件大小查找

3.按空文件查找

4.按文件类型查找

5.按inode号

6.按权限查找

7.最大搜索目录深度

8.最小搜索目录深度

9.按时间戳查找

10.处理动作


一、Linux系统目录结构和相对/绝对路径

(一)系统目录结构

在WIN系统中,查看文件要先进入相应的盘符,然后进入文件目录

在WIN中,它有很多根,例如C:\? ?D:\? E:\? 等等,按字母排列,根后面再显示路径

Linux下只有一个根目录

使用tree命令查看,这个命令默认是没有的,需要手工安装

首先将光盘挂载到mnt下

[root@localhost /]# mount /dev/sr0 /mnt
mount: /dev/sr0 写保护,将以只读方式挂载

输入 rpm -ivh /mnt/Packages/tree-1.6.0-10.el7.x86_64.rpm 安装命令

这样命令就安装成功了,现在来查看一下

查看 / 的话,会跳出较多的信息,这里我们查看tmp来演示一下

可以看到,这些文件都是 真实存在的

知道这些以后,我们来看看重点的/

1	/	    处于Linux系统树型结构的最顶端,是Linux文件系统的入口,所有的目录都在/之下
2	/bin	bin是BIniary的缩写。常用的二进制命令目录。比如ls、cp、mkdir、cut等;和/类似,一些用 
            户级gnu工具
3	/boot	存放的系统启动相关文件
4	/dev	Device的缩写。硬件设备文件目录,如声卡、磁盘等。在Linux中一切皆文件,磁盘等设备也被看 
            做文件
5	/etc	配置文件,当前系统有哪些用户,密码信息,软件配置信息
6	/home	普通用户的家目录默认存放目录
7	/lib	库文件存放目录
8	/mnt	挂载存储设备的目录
9	/media	多媒体文件
10	/opt	空文件夹,存放后天安装的软件
11	/proc	内存环境中的程序状态
12	/sys	系统目录,存放硬件信息的相关文件
13	/run	运行目录,存放的是系统运行时的数据
14	/srv	服务目录,存放本地服务的相关文件
15	/sbin	大多数涉及系统管理的命令都存放该目录,root用户才可以执行
16	/tmp	存放临时文件
17	/var	系统运行和软件运行时产生的日志信息
18	/usr	存放应用程序和文件

(二)相对路径和绝对路径

1.绝对路径

从根开始描述文件的位置,有且唯一,无论在哪里都可以准确找到,从 / 开始?

2.相对路径

从当前路径 开始描述文件的位置,有不一定唯一,如果参照物变了就找不到文件从,或者..开始

可以看到,在opt文件夹下直接切换到images是不可以的,..表示上册目录,opt的上级目录就是根

(三)通配符的作用

通配符 : 代表了一类字符,它的作用是匹配文件的名字

?:代表任意一个单个字符

* :任意长度字符,不能显示隐藏文件

例如:

匹配以P开头的 :ls p*

匹配以conf结尾的:ls ?*conf

中间包含conf的:ls *conf*

数字开头的:ls ?[0-9]*

字母开头的:ls ?[a-z]*

符号效果
匹配一个字符 f?.txt
*匹配所有非隐藏的字符无论多长多短,但不匹配 "." 开头的文件,即隐藏文件
{1..10}1到10
{a..z}a b c ...z
{A..Z}A B C .....Z
[123]([此处括号里值代表一个字符])取其中之一有就显示没有也无所谓
[a-z]单个小写字母范围需要注意
[0-9]单个数字匹配数字范围(0123456789)
\转义符,表示原来的意思
[[:lower:]]小写字母表示 a-z
[[:upper:]]大写字母表示 A-Z
[^zhou]匹配列表中的所有字符以外的字符
[[:digit:]]任意数字,相当于0-9
[[:alpha:]]任意字母

二、创建、复制、删除文件,rm -rf /意外事故

(一)创建文件夹

1.命令之------touch

作用:常用来创建空文件,如果有文件,则用来修改文件的时间

文件的三种时间:

访问时间:atime? 查看内容? ?cat? a.txt

修改时间:mtime? ?修改内容? vim? a.txtt

改变时间:ctime? ? 文件属性,比如权限? change time? ?chmod +x a.sh

语法:touch 文件名

也可以同时创建多个

语法:touch 文件名 (空格)文件名

如果想创建同名,不同序号的多个文件夹可以加上{a..k},这样相当于增加了一个变量

数字也可以

2.命令之----vim

使用vim命令创建一个新文件

输入vim god.txt 在里面输入内容后保存退出

输入cat god.txt查看一下输入的内容

3.命令之-----mkdir

作用:创建目录

语法:mkdir (选项)文件名

同时创建多个目录? ? ? ?

当我们想创建C目录的时候,会显示没有那个文件和目录。这是因为,我们没有a目录b目录

创建一个目录的时候,如果这个目录的上一级不存在的话,要创建父目录

这个时候需要加上 “? -p”? :parents? 表示同时创建父目录,就是递归建立目录

(二)删除文件和目录

命令:rm

作用:可以删除一个目录中的一个或者多个文件或目录,对于链接文件,只删除整个链接文件,而原文件保持不变的

语法:rm 【选项】 处理对象

选项:

-f:强制删除,没有提示

-r:删除目录

(三)复制文件

命令:cp? 源文件/目录? ?目标文件/目录

选项:-R/r:递归处理,将制定目录下的所有文件与子目录一并处理

-a:保留文件夹权限

正常cp的情况下会改变文件属性

-a 后会保留原属性

(四)移动文件或文件夹

命令:mv

语法:mv /源目录/文件? /目标目录/文件

作用:

1.源文件和目标文件路径位置一样是改名

2.源文件和目标文件路径位置不一样是移动,也可以是移动并改名

三、查找文件的命令

(一)du命令

du:disk use ?查看磁盘使用量,一般用来查找大的文件夹

使用方法 du ?【选项】 【文件或目录】 ?默认是全部显示

-a:统计磁盘占用时包括所有的文件.而不仅仅只统计目录

-h:以更人性化的方式(默认以KB计数,但不显示单位)显示出统计结果

-s:只统计所占用空间总的 (Summary) 大小,而不是统计每个子目录、文件的大小

-d? 数字 代表显示层级,显示该目录下子文件夹
ll 与 du 的区别

ll看到的是真实文件的大小,du看到的是文件占了多少磁盘(4K)

(二)which命令

which:在$PATH中查找外部命令

语法:which? 命令

查找ls命令,输入 which? ?ls 显示ls 在usr/bin/下

(三)find命令

find:查找

语法:find 【查找范围】【查找条件】【处理动作】

特点:精确查找、实时查找、支持查找条件巨多

1.按文件名称查找

-name? ?

根据目标文件的名称进行查找,允许使用“*”及“?”通配符 ?-iname "文件名称" 不区分大小写

比如要找一个boot下vm开头的文件

可以在后面加上-ls 显示信息,就是处理动作

2.按文件大小查找

-size? ?

根据目标文件的大小进行查找一般使用“+”、“-”号设置超过或小于指定大小作为查找条件常用的容量单位包括 kB(注意 k 是小写)、MB、GB

比如查找小于 10k 的文件? 输入find /tmp -size -10k

3.按空文件查找

-empty

每个文件或者文件夹都有一个inode号,如果inode号用完,磁盘即便有空间也无法在创建文件,所以需要查找空文件进行删除

需要在命令行后面加上处理动作

4.按文件类型查找

-type? ?

根据文件的类型进行查找文件类型包括普通文件(f)、目录(d)、块设备文件(b)、字符设备文件(c)等

5.按inode号

-inum? ?

根据文件inode号查找

6.按权限查找

-perm?

?按文件权限查找

这里r=4 w=2 x=1 数字代表文件相应的权限,后面会讲到,在这里大家做个简单的了解

7.最大搜索目录深度

-maxdepth? n

将你的文件以分级的形式查找

8.最小搜索目录深度

-mindepth n

同上??

9.按时间戳查找

比如要找到一个10天以上,以log 结尾的 普通文件

输入find / -name "*log" -type f -mtime ?+10

10.处理动作

-ls:显示详细信息

-delete:删除

-ok:连接find的命令与后续操作命令,会询问是否操作

它会逐条询问

-exec :与-ok作用一致,但不询问直接操作

文章来源:https://blog.csdn.net/hy199707/article/details/135091007
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。