这次解释一下三个Linux文件显示的三个时间,然后展示一下find命令的各个功能

在linux操作系统中,每个文件都有很多的时间参数,其中有三个比较主要,分别是ctime,atime,mtime

  • modification time(mtime):

   当修改文件的内容数据的时候,就会更新这个时间,而更改权限或者属性,mtime不会改变,这就是和ctime的区别

  • status time(ctime)

   当修改文件的权限或者属性的时候,就会更新这个时间,ctime并不是create time,给我的感觉更像是change time,但这么说也不完全对,因为只有当更新文件的属性或者权限的时候才会更新这个时间,更改内容的话是不会更新这个时间的

  • accesstime(atime)

   当使用这个文件的时候就会更新这个时间

那么为什么我使用vim打开一个文件的时候,atime没有改变呢?因为在我当前的版本中,有了relatime的概念,如果我们频繁的对文件进行读取访问,就会频繁的修改atime,然后频繁的访问磁盘I/O,性能下降的很厉害,说实话,慢!用了relatime参数之后,除非atime早于mtime或者ctime,否则atime不会被更新

悲剧,中文的linux三个时间都翻译过来了。。。

find指令详解,它有很多功能,很强大,实时性很强,每找一个文件都会十分老实地去磁盘中寻找,所以它又很慢。。。

find   path   -option   [   -print ]   [ -exec   -ok   command ]   {} \;

PS:[]中的是可以没有的,就是附加选项

-path:就是文件的路径啦

-option:就是下面要说明的各个参数,参数后面有的会有操作数,需要注意

-print:find命令将匹配的文件输出到标准输出。

-exec : -ok是-exec的一个选项,加上之后执行command时会询问用户

{} \:注意是反斜杠,大括号和反斜杠之间有一个空格

-;:注意!!!!分号必不可少!!!

  • 先来一个例子

这里显示出了我写的一个命令,快看!分号不能少(因为我老是忘记,所以多写几遍),因为ls -l本身就不会询问用户(rm命令会询问,试试rm吧),所以自然用不了-ok,当我把-ok去掉之后,就可以正常执行ls -l了,

find命令参数详解

find命令有很多参数,下面就用截图来一一说明

  • -name   filename             #查找名为filename的文件,和下面的放在一张图里面了
  • -perm                        #按执行权限来查找,使用权限查找的时候使用权限码就可以了

  • -user    username             #按文件属主来查找
  • -group groupname            #按组来查找

  • -mtime   -n +n                #按文件更改时间来查找文件,-n指n天以内,+n指n天以前
  • -atime    -n +n               #按文件访问时间来查GIN: 0px">
  • -ctime    -n +n              #按文件创建时间来查找文件,-n指n天以内,+n指n天以前

看到这里的-n之后就理所当然的想到+n是n天之后?我仔细想了想,我怎么可能在未来创建文件。。。

找到的几乎都是同样的文件,原因是我很少去linux里面创建新的文件,而是把windows的文件直接通过磁盘共享拿过去。。。

  • -nogroup                     #查无有效属组的文件,即文件的属组在/etc/groups中不存在

咱好像没有这样的文件啊

  • -nouser                     #查无有效属主的文件,即文件的属主在/etc/passwd中不存

这样的似乎也没有

  • -newer   f1 !f2               #查更改时间比f1新但比f2旧的文件,使用的时候要注意f1和f2前面都应该有-newer参数才行

  • -type    b/d/c/p/l/f         #查是块设备、目录、字符设备、管道、符号链接、普通文件

我先建立了一个管道文件,然后搜索类型为管道文件的文件(。。。)

  • -size      n[c]               #查长度为n块[或n字节]的文件

这个我就不截图了。。

  • -depth                       #使查找在进入子目录前先行查找完本目录

给我的感觉而言,这个更像是遍历该文件夹下所有文件的样子,遇到子目录的时候先不进入子目录遍历,而是遍历完当前文件夹下的所有文件之后再去遍历子目录(就是子文件夹)下的文件,这样不断地递归。。。这不就是个层序遍历么?

  • -fstype:查找位于某一类型文件系统中的文件,文件系统类型可在/etc/fstab中找到

这个参数是什么意思没有太理解,测试了一下什么也没有找到,我都不知道应该怎么测试他

  • -mount                       #查文件时不跨越文件系统mount点

这个参数似乎是不允许进入子目录进行查找的,我试了一下,子目录下的文件说是查找不到

  • -follow                      #如果遇到符号链接文件,就跟踪链接所指的文件

当有硬链接的时候就不跟踪了,下面有个实例,file_hard是硬链接,file_ln是符号链接,当我把软连接删除,就不会跟踪到./test/file这个链接文件了,证明硬链接是不能跟踪的

  • -cpio                         #对匹配的文件使用cpio命令,将他们备份到磁带设备中

在普通的查找结果之后,把该文件备份写到磁盘上。。。

  • -prune                       #忽略某个目录

这个就不用说了吧。。。。

最后强烈希望各位批评指正!!我还有很多不懂得地方,指出来我会超感谢的!

												

Linux的find命令实例详解和mtime ctime atime的更多相关文章

  1. Linux备份数据库,mysqldump命令实例详解

    mysqldump是mysql数据库中备份工具,用于将MYSQL服务器中的数据库以标准的sql语言的方式导出,并保存到文件中. 语法: mysqldump (选项) 选项: --add-drop-ta ...

  2. Linux计划任务Crontab实例详解教程

    说明:Crontab是Linux系统中在固定时间执行某一个程序的工具,类似于Windows系统中的任务计划程序 下面通过详细实例来说明在Linux系统中如何使用Crontab 操作系统:CentOS ...

  3. Linux下find命令用法详解

    Linux下find命令用法详解   学神VIP烟火 学神IT教育:XueGod-IT   最负责任的线上直播教育平台   本文作者为VIP学员 烟火   第一部分:根据文件名查找   1.在当前目录 ...

  4. linux下sort命令使用详解---linux将文本文件内容加以排序命令

    转载自:http://www.cnblogs.com/hitwtx/archive/2011/12/03/2274592.html linux下sort命令使用详解---linux将文本文件内容加以排 ...

  5. Linux中mpstat命令参数详解

    Linux中mpstat命令参数详解 mpstat 是 Multiprocessor Statistics的缩写,是实时系统监控工具.其报告与CPU的一些统计信息,这些信息存放在 /proc/stat ...

  6. linux基础-磁盘阵列(RAID)实例详解

    磁盘阵列(RAID)实例详解 raid技术分类 软raid技术 硬raid技术 Raid和lvm的区别 为什么选择用raid RAID详解 RAID-0 RAID-1 RAID-5 Raid-10 R ...

  7. Linux权限管理命令chmod详解

    命令chmod详解 命令chmod(英文原意:change permissions mode of a file),所在路径为: 可以看到,它的路径为:/usr/bin/chmod,因此,它的执行权限 ...

  8. Linux下的Make命令实例详解

    众所周知在Linux系统下的make 命令是系统管理员和程序员用的最频繁的命令之一.管理员用它通过命令行来编译和安装很多开源的工具,程序员用它来管理他们大型复杂的项目编译问题.下面这 篇文章我们将用一 ...

  9. 入门学习Linux常用必会命令实例详解

    Linux提供了大量的命令,利用它可以有效地完成大量的工作,如磁盘操作.文件存取.目录操作.进程管理.文件权限设定等.所以,在Linux系统上工作离不开使用系统提供的命令.要想真正理解Linux系统, ...

随机推荐

  1. Java_Ant详解(转载)

    Java_Ant详解   1,什么是antant是构建工具2,什么是构建概念到处可查到,形象来说,你要把代码从某个地方拿来,编译,再拷贝到某个地方去等等操作,当然不仅与此,但是主要用来干这个3,ant ...

  2. golang包引用解析

    golang包引用解析 环境变量配置如下: GOROOT----[C:\Go] GOPATH----[F:\workspace\go_home] vs code配置如下: F:\workspace\g ...

  3. Linux硬件信息采集

    dmidecode: 简介: dmidecode命令通过读取DMI数据库获取硬件信息并输出.由于DMI信息可以人为修改,因此里面的信息不一定是系统准确的信息 dmidecode遵循SMBIOS/DMI ...

  4. TX2 自制底板不识别USB

    目的:解决自制的底板无法识别USB,使能3个UART接口,使能3个SPI接口. Jetpack版本:Jetpack-3.1 虚拟机:ubuntu14.04 使用dtb文件夹下的文件替换刷机包../64 ...

  5. 16. js 判断变量类型,包括ES6 新类型Symbol

    相信大家在开发中遇到需要判断变量类型的问题,js变量按存储类型可分为值类型和引用类型,值类型包括Undefined.String.Number.Boolean,引用类型包括object.Array.F ...

  6. 【原创】elasticsearch入门

    示例 示例一: 示例二: 示例三: 示例四: ES介绍 ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口.Ela ...

  7. BZOJ - 1003 DP+最短路

    这道题被马老板毒瘤了一下,TLE到怀疑人生 //然而BZOJ上妥妥地过了(5500ms+ -> 400ms+) 要么SPFA太玄学要么是初始化block被卡到O(n^4) 不管了,不改了 另外D ...

  8. Scala 中 for 循环 和 generator 的使用例子

    这个例子是,从每个list中,找到age最大的那个node. class Node(vName: String, vAge: Int) { // Entity class var name: Stri ...

  9. gulp打包css/image/Less/Sass

    其他的和打包前一篇随笔(打包js) http://www.cnblogs.com/teersky/p/7251329.html 相同,本篇文章主要写gulpFile.js的配置: 安装CSS打包插件: ...

  10. poi读取excel2010

    package com.icss.test; import java.io.FileInputStream;import java.io.InputStream;import java.util.Ar ...