Linux文件归档管理

Linux怎样保存文件

数据

- 这里数据就是文件的内容

元数据

- linux系统中,所有与某个文件相关的额外信息都保存在一个叫做i-节点(inode)的结构中

文件名

- 文件名保存在名为目录项(dentry)的结构中

i-节点

所有文件都有如下的属性:

文件类型、链接数、用户所有者、组所有者、权限和时间信息。这种信息保存在名为i-节点的结构中。

 

链接数

i-节点记录文件的链接数,也就是引用该文件的目录项(dentry)数。通常常规文件只有一个文件名,链接数也是1

时间信息

每个i-节点保存与文件相关的三种时间信息,通常叫做atimectimemtime,含义如下:

缩写

名称

目的

atime

访问时间

文件数据每次被阅读后更新

ctime

改变时间

文件的i-节点信息每次被改变后都会更新

mtime

修改信息

文件数据每次被更改后更新

 

stat命令查看i-节点的信息

一个文件的i-节点信息集合叫做该文件的状态(startus)。

我们可以把stat命令看作是现实文件状态的命令。

用法:

stat [option ] file

 

一个文件系统内,每个i-节点都分配到一个独一无二的i-节点编号

硬链接和软连接

硬链接:

将多项目录项关联到一个i-节点(同一个文件保存在两个地方或不同的文件名)

ln  目标文件  链接文件

软连接:是一些不同的i-节点,用来引用其他文件名。

ln  -s   目标文件  链接文件

查找文件find命令

用法:

find    {搜索目录}  {搜索条件}  [动作]

搜索条件:

-size  n  文件的大小

-type   文件的类型(f普通、d目录、i软连接)

-name:按照文件名查找文件。支持统配符*?

-user: 按照文件属主来查找文件。

-group:按照文件所属的组来查找文件。

-mtime n:按照文件的更改时间来查找文件

atime n:搜索在过去n天读取过的文件。

ctime n:搜索在过去n天修改过的文件。

- n表示文件更改时间距现在n天以内,+ n表示文件更改时间距现在n天以前

有时间有关选项:共有 -atime, -ctime  -mtime ,以 -mtime 说明

   -mtime  n n 为数字,意义为在 n 天之前的『一天之内』被更改过内容的文件;

   -mtime +n :列出在 n 天之前(不含 n天本身)被更改过内容的文件名;

   -mtime -n :列出在 n 天之内(n 天本身)被更改过内容的文件名。

print:输出搜索结果,并且打印

find命令查找文件的几种方法:
1)根据文件名查找
例如,我们想要查找一个文件名是lilo.conf的文件,可以使用如下命令:
find / name lilo.conf
find命令后的“/”表示搜索整个硬盘。
2)快速查找文件
根据文件名查找文件会遇到一个实际问题,就是要花费相当长的一段时间,特别是大型Linux文件系统和大容量硬盘文件放在很深的子目录中时。如果我们知道了这个文件存放在某个目录中,那么只要在这个目录中往下寻找就能节省很多时间。比如smb.conf文件,从它的文件后缀“.conf”可以判断这是一个配置文件,那么它应该在/etc目录内,此时可以使用下面命令:
find /etc name smb.conf
这样,使用快速查找文件方式可以缩短时间。
3)根据部分文件名查找方法
有时我们知道只某个文件包含有abvd4个字,那么要查找系统中所有包含有这4个字符的文件可以输入下面命令:
find / name '*abvd*'
输入这个命令以后,Linux系统会将在/目录中查找所有的包含有abvd4个字符的文件(其中*是通配符),比如abvdrmyz等符合条件的文件都能显示出来。
(4) 使用混合查找方式查找文件
find命令可以使用混合查找的方法,例如,我们想在/etc目录中查找大于500000字节,并且在24小时内修改的某个文件,则可以使用-and ()把两个查找参数链接起来组合成一个混合的查找方式。
find /etc -size +500000c -and -mtime +1

动作:

-exec command;     对匹配文件执行command,用{}表示匹配的文件。命令形式为:

' command' {} \;,注意{ }\;之间的空格。

-ok  command;       与-exec相同,但是提示确认没个文件的操作

用法:找出名字为1.txt文件 并且用长格式输出:

find /root -name 1.txt -exec ls -l {} \;

 

posted @ 2019-05-16 21:10  杨宇飞  阅读(250)  评论(0编辑  收藏  举报