上篇文章我们介绍过stat命令,当时只是简单的提了提,这里我们详细讲解下关于stat和时间戳

一、关于时间戳

每一个文件都有3中时间(称为时间戳timestamps),对这3种时间,很多时候容易混淆不清,因此 这里要说明下:

Access time(atime):是指取用文件的时间,所谓取用,常见的操作有:使用编辑器查看文件内容,使用cat命令显示文件内容,使用cp命令把该文件(即来源文件)复制成其他文件,或者在这个文件上运用grep sed more less tail head 等命令,凡是读取而不修改文件的操作,均衡改变文件的Access time.

Modify time(mtime):是指修改文件内容的时间,只要文件内容有改动(如使用转向输出或转向附加的方式)或存盘的操作,就会改变文件的Modify time,平常我们使用ls –l查看文件时,显示的时间就是Modify time

Change time(ctime):是指文件属性或文件位置改动的时间,如使用chmod,chown,mv指令集使用ln做文件的硬是连接,就会改变文件的Change time.

Note:

如果修改文件(使用编辑器存盘或使用) >>转向操作),则Modify time和Change time

会同步更新成写入的时间,但Access time不变。

如果执行touch文件,则3中时间全部改变

使用ln –s做文件的软式连接,会改变文件的取用时间

使用ls –la查看一般文件,不会更改这三种时间,但如果这个文件时符号链接文件,则会改变取用的时间(Access time)

关于时间戳的使用,在系统运维中,时间戳是至关重要的,尤其是配合find命令使用更是大大简化了我们的工作。有关find的用法,我们在下一个小节中将详细讲解。

二、关于stat命令

Stat是获取关于文件的额外信息,获得两种信息:

1、 文件系统

2、 文件

基本用法:

取得文件系统属性

Stat –f /dev/sda1

-f :表示取用的是文件系统(分区)而不是文件

取得文件属性

Stat filename

Stat 基本语法格式:

Stat –c 格式代码 文件

格式代码:

针对文件(非全部列举)

%A:用文件权限代码来表示权限

%F:用八进制表示文件权限

%G:文件拥有者的组名

%g:文件拥有者的属组id(gid)

%i:inode编号

%n:文件名

%s:文件大小

%U:文件拥有者名称

%u:文件拥有者的id(uid)

%x: 取用时间

%y: 修改时间

%z: 属性改动时间

针对文件系统:

%a: 一般使用者可自由使用的区块数

%b: 全部的区块数

%c: 全部的文件节点数

%d: 可取用的文件节点数

%f: 可取用的区块数

三、关于chattr和lsattr

chattr命令的属性:

chattr:增加特殊属性:

chattr + 属性代码 文件

+   表示个个属性可个别地加上,不影响文件其他原有的特殊属性

=    表示直接指定文件的属性,原已存在单位被指定的属性会消失

-    表示移除某些属性

属性:

a:文件的取用时间不改变

i:不能修改文件  只有root才可以操作

D:该文件不需要用dump做备份

lsattr命令:

lsattr:查看修改的结果

lsattr 文件

后记:关于stat名令可能工作中可以使用其他命令代替,对于查找系统文件的时间戳确实是一个很好的命令,

但是对于时间戳,我发现很多人都在群里问,touch的时候文件戳改变的是哪个,等等有关的问题,还有就是使用find命令的时候,对于时间的匹配不精确,希望大家能够很好的了解时间戳的概念,以便于更好的工作。

转载于:https://blog.51cto.com/lovelace/1212623

关于stat命令和时间戳相关推荐

  1. linux执行命令带时间戳,Linux查看History记录加时间戳的小技巧

    Linux查看History记录加时间戳小技巧 熟悉bash的都一定知道使用history可以输出你曾经输入过的历史命令,例如[root@servyou_web ~]# history | more ...

  2. centos history历史命令添加时间戳

    history历史命令添加时间戳 linux系统中经常会使用的history命令来查看历史命令,但是,一般的history命令只显示历史命令,并没有显示历史什么时间执行的命令,如下图所示: 历史命令添 ...

  3. python调用ping命令_Windows 中通过Python实现ping命令加时间戳

    由于ping命令在ping的时候无法加入时间,不能够直观分析结果.便想在ping的时候加入时间戳. 1.首先需要系统配置了Python的环境,我的环境如下,这里就不介绍环境搭建步骤. 2.以下是代码展 ...

  4. 使用date命令,进行时间戳和日期时间的互转

    首先是知道时间转成时间戳 date -d "2014-01-16 12:30:11" +%s date -d "2014-01-16" +%s # 等价于201 ...

  5. Linux下文件的三种时间戳

    Linux下文件的三种时间标记 三种时间对应关系表 column column column 访问时间 Access atime 修改时间 Modify mtime 状态改动时间 Change cti ...

  6. linux时间 a x z,关于linux的命令一个莫名的想法,a到z有哪些命令

    如果有人突然问你linux系统中a到z中命令有哪些,不知道你是什么反应.做稍微整理下,以下是a到z的常用的命令. 命令a-z: a : awk,alias,ab b:blkid ,bash,brctl ...

  7. oracle按时间导出,如何为Oracle导出文件加上时间戳

    eygle | English Version[版权声明:转载时请务必以超链接形式标明文章原始出处和作者信息及本声明] 链接:http://www.eygle.com/archives/2006/04 ...

  8. Linux系统性能监控之6个vmstat和6个iostat命令

    这篇文章主要介绍一些Linux性能检测相关的命令. vmstat和iostat的两个命令可以运行在主流的Linux/Unix操作系统上. 如果vmstat和iostat命令不能再你的电脑上运行,请安装 ...

  9. linux当前时间 按格式化,Linux下date命令,格式化输出,时间设置

    date命令的帮助信息 [root@localhost source]# date --help 用法:date [选项]... [+格式] 或:date [-u|--utc|--universal] ...

最新文章

  1. CentOS6.2解决passwd: Authentication token manipulation error报错
  2. 程序员注意了!人社部“就业报告”:未来5年,这10个新职业有千万缺口
  3. POJ-2524-Ubiquitous Religions
  4. svn没有右键菜单的解决方案
  5. mysql update使用select的结果
  6. python编程入门电子书下载-Python编程基础如何快速入门?“附电子书下载”
  7. 解决 IntelliJ IDEA 中 .propertise 文件保存后中文乱码
  8. xp系统qq安装不上网络连接服务器,winxp系统下QQ远程协助连不上如何解决
  9. 10 个最佳的网站分析方法
  10. A sample that using the completion port I/O model
  11. python类库31[使用minidom读写xml]
  12. OpenCV-美食—巧克力滤镜
  13. H5神兽,优优,牛来了,牛小天,牛欢喜,至尊星空等搭建教程
  14. 股票走势图php源码下载,flex实现股票行情走势图示例代码
  15. 如何写一个Vue自定义指令
  16. PPT倒计时制作技巧及模板素材下载
  17. 如何使用python insert插入数据
  18. 语义分割如何走下去?| 文末送书
  19. 2022年衡量技术债务的8个主要指标
  20. 云游戏能成为5G第一个杀手级应用吗?

热门文章

  1. 金山云服务器内网带宽,性能提升40%!第三代金山云服务器全面覆盖不同企业计算力需求...
  2. dbexception.java,mysql – org.h2.jdbc.JdbcSQLException:找不到列“ID”
  3. mysql 数据库视图_MySQL视图介绍
  4. Quadtrees UVA - 297
  5. hdu3949(线性基,求第k小的异或和
  6. linux 运行springboot 项目 (后台运行,并且打印实时日志)
  7. Python中的异常处理try、exception、raise
  8. Spring Cloud Stream与RabbitMQ 生产者和消费者位于同一个应用服务
  9. Spring web项目中web.xml常用的配置
  10. 靠右对其_中重型货车靠右行驶新规实施一周