linux文件的时间


1,linux文件有哪些时间属性

    access time:atime 访问时间:即查看访问文件的时间

    modify time:mtime 修改时间:修改文件内容的时间

    change time:ctime 改变时间:修改文件元数据的时间



2,查看linux文件时间

    相关命令:stat,ls

    关于文件的:
$ stat xiaoyue.sh 
  File: `xiaoyue.sh'
  Size: 943             Blocks: 8          IO Block: 4096   regular file
Device: 802h/2050d      Inode: 6738796     Links: 1
Access: (0775/-rwxrwxr-x)  Uid: ( 1000/     scm)   Gid: ( 1000/     scm)
Access: 2016-06-06 16:40:48.748882380 +0800
Modify: 2016-05-31 14:01:12.963329841 +0800
Change: 2016-05-31 14:01:12.983329842 +0800
 Birth: -
    查看目录的:
$ stat XiaoYue/         
  File: `XiaoYue/'
  Size: 4096            Blocks: 8          IO Block: 4096   directory
Device: 802h/2050d      Inode: 3801089     Links: 33
Access: (0775/drwxrwxr-x)  Uid: ( 1000/     scm)   Gid: ( 1000/     scm)
Access: 2016-06-06 16:40:56.104882736 +0800
Modify: 2016-06-06 16:53:40.560919734 +0800
Change: 2016-06-06 16:53:40.560919734 +0800
 Birth: -
$ ls -lut xiaoyue.sh 
-rwxrwxr-x 1 scm scm 943 Jun  6 16:40 xiaoyue.sh
$ ls -lt xiaoyue.sh  
-rwxrwxr-x 1 scm scm 943 May 31 14:01 xiaoyue.sh
$ ls -lct xiaoyue.sh  
-rwxrwxr-x 1 scm scm 943 May 31 14:01 xiaoyue.sh
    同样的方式查看目录的atime mtime和ctime
$ ls -lud XiaoYue/
drwxrwxr-x 33 scm scm 4096 Jun  6 16:55 XiaoYue/


3,如何修改linux文件的时间

    相关的命令:touch,cp,mv,echo,vi,ls

    cp,mv,echo,vi,ls都会改变linux文件的时间,这里能够主动修改时间属性的命令就是touch,所以下面主要说说touch命令怎么用。

    先说touch命令的四个选项

-a 修改文件访问时间
-m 修改文件修改时间
-t STAMP 指定修改的时间
-c 如果文件不存在则不创建
  • 修改文件的三个时间属性为当前系统时间

# touch xiaoyue.sh
  • 修改文件的访问时间为系统当前时间

$ touch -a xiaoyue.sh
  • 修改文件的修改时间为当前时间

$ touch -m xiaoyue.sh

注意:atime和mtime本就是文件的时间属性,所以上面的操作也会引起ctime的改变,并且ctime是操作时的系统时间

  • 关于-t 后面指定的时间格式

[[CC]YY]MMDDhhmm[.ss] 
   年   月日时分 秒
其中年可以是2位也可以是4位,秒可以省略

然后指定修改时间

$ touch -at 201606061423.22 xiaoyue.sh
$ touch -mt 201606051423.22 xiaoyue.sh
  • touch命令后面跟一个不存在的文件命,shell会自动新建一个空的文件。不过加-c可以在文件不存在的情况下不创建新文件

other:

    a,对于文件,修改文件内容(vi)mtime会改变,ctime也一定会改变,因为文件大小信息会改变
    b,对于文件,mtime改变但ctime不一定会改变,也就是修改文件不一定访问文件
        例如:echo "add oneline" >>xiaoyue.sh   
    c,对于目录,修改目录下的某一个文件(vi)是不会改变目录atime的,但是mtime和ctime会改变。
    d,ls目录下的任意文件会改变atime,但不会改变mtime和ctime。

如果博客发表之后还可以修改就好了。。。


原创文章,作者:Net20_天意,如若转载,请注明出处:http://www.178linux.com/17834

赞 (0)
Net20_天意Net20_天意
上一篇 2016-06-09 22:15
下一篇 2016-06-09 22:15

相关推荐

  • 设计模式 ( 十九 ) 模板方法模式Template method(类行为型)

    设计模式 ( 十九 ) 模板方法模式Template method(类行为型) 1.概述 在面向对象开发过程中,通常我们会遇到这样的一个问题:我们知道一个算法所需的关键步骤,并确定了这些步骤的执行顺序。但是某些步骤的具体实现是未知的,或者说某些步骤的实现与具体的环境相关。例子1:银行业务办理流程在银行办理业务时,一般都包含几个基本固定步骤:取号排队->…

    Linux干货 2015-04-07
  • 免费翻墙 [精]

    本人在hostus上买了一个国外的vps,花了一上午把Google给做好,可以访问g.abcdocker.com进行搜索,因为是使用nginx代理进行翻墙。网上的文章也很乱,很不好整理。 可以可以使用g.abcdocker.com上Google查阅资料。(无法观看视频) www.abcdocker.com

    2017-06-17
  • linux文件管理

    目录创建删除,软硬链接的区别和注意,file命令的使用,工作中遇到一些情况的处理方法

    2017-11-18
  • Bash 的配置文件

    有时候,在定义了别名 alilas cls=clear  , 或者定义了 umask=033 等等,在logout 用户后再登录,会失效,因为这些本地变量,仅对当前shell生效。而要保留配置,使其永久生效,就需要将这些定义的写入配置文件中保存。下面介绍下bash的配置文件:  Bash的配置文件可以分为: profile类: /etc/…

    Linux干货 2015-04-04
  • Nginx反向代理原理、压测及模块功能的实现

    基本架设 反向代理模块 缓存功能的实现 修改报文首部IP 向后端转发时是否让客户端知道 在http中定义缓存基本属性 定义当后端服务宕机时过期缓存生效条件 报文首部模块,自定义报文首部 负载均衡模块1 负载均衡模块2 负载均衡模块的常用调度方法1 负载均衡常用调度方法2 与http想等的动态负载均衡模块1 与http想等的动态负载均衡模块2 这里让我们对之前…

    2016-10-30
  • 运维的危险命令,用了必死(1)

    Linux命令行佷有用、很高效,也很有趣,但有时候也很危险,尤其是在你不确定你自己在正在做什么时候。这篇文章并不打算引来你对Linux或linux 命令行的愤怒。我们只是想让你意识到在你运行某些命令时应该三思而后行。(译注:当然,以下命令通常都是在root权限下才能将愚蠢发挥到无可救药;在普通用户身份下,破坏的只是自己的一亩三分地。)

    2017-11-16