linux下查看和修改文件时间

作者:佚名 上传时间:2019-05-25 版权申诉

一、查看文件时间及相关命令

1、stat查看文件时间

[root@web10 ~]# 
  File: “install.log”
  Size: 33386           Blocks: 80         IO Block: 4096   一般文件
  Device: fd00h/64768d    Inode: 7692962     Links: 1
  Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
  Access: 2012-07-13 16:02:34.000000000 +0800
  Modify: 2011-11-29 16:03:06.000000000 +0800
  Change: 2011-11-29 16:03:08.000000000 +0800

说明:Access访问时间。Modify修改时间。Change状态改变时间。可以stat *查看这个目录所有文件的状态。

而我们想要查看某文件的三个时间中的具体某个时间,并以年月日时分秒的格式保存。我们可以使用下面的命令:

[root@web10 ~]#

2、ls查看文件时间

相应的通过ls 查看时也有三个时间:

modification time(mtime,修改时间): 当该文件的“内容数据”更改时,就会更新这个时间 。内容数据指的是文件的内容,而不是文件的属性。
status time(ctime,状态时间): 当该文件的”状态(status)”改变时,就会更新这个时间 ,举例来说,更改了权限与属性,就会更新这个时间。
access time(atime,存取时间): 当“取用文件内容”时,就会更新这个读取时间 。举例来说,使用cat去读取 ~/.bashrc,就会更新atime了。

[root@web10 ~]# 
-rw-r--r-- 1 root root 33386 2011-11-29 install.log
[root@web10 ~]# 
-rw-r--r-- 1 root root 33386 07-13 16:02 install.log

注意:ls参数里没有--mtime这个参数, 因为我们默认通过ls -l查看到的时间就是mtime

二、修改文件时间

创建文件我们可以通过touch来创建。同样,我们也可以使用touch来修改文件时间。touch的相关参数如下:

-c : 仅修改时间,而不建立文件。

,也可以使用 --date="日期或时间"



-t : 后面可以接时间,格式为 [YYMMDDhhmm]

注: 如果touch后面接一个已经存在的文件,则该文件的3个时间(atime/ctime/mtime)都会更新为当前时间

若该文件不存在,则会主动建立一个新的空文件。

[root@web10 ~]# 

[root@web10 ~]#
  File: “install.log”
  Size: 33386           Blocks: 80         IO Block: 4096   一般文件
  Device: fd00h/64768d    Inode: 7692962     Links: 1
  Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
  Access: 2012-07-13 16:21:50.000000000 +0800
  Modify: 2012-07-13 16:21:50.000000000 +0800
  Change: 2012-07-13 16:21:50.000000000 +0800

同样,使用ls ,查看到的结果也一样。

[root@web10 ~]# 
-rw-r--r-- 1 root root 33386 07-13 16:21 install.log
[root@web10 ~]# 
-rw-r--r-- 1 root root 33386 07-13 16:21 install.log
[root@web10 ~]# 
-rw-r--r-- 1 root root 33386 07-13 16:21 install.log

下面再看一个和touch不相关的例子:

[root@web10 ~]# cp /etc/profile .;
ll --time=atime profile ;
ll --time=ctime profile
cp:是否覆盖“./profile”? y
-rw-r--r-- 1 root root 1344 07-13 16:24 profile
-rw-r--r-- 1 root root 1344 07-13 16:25 profile

因为我之前运行过这个命令一次,所以会出现覆盖,不过这个覆盖出的好,刚才让我们看到了atime和ctime的时间的差别。

我们再回到touch利用touch修改文件时间:

1. 同时修改文件的修改时间和访问时间

2. 只修改文件的修改时间

3. 只修改文件的访问时间

下面再给一个rootkit木马常用的伎俩。就是把后一个文件的时间修改成和前一个相同。

touch -acmr /bin/ls /etc/sh.conf

另外touch还支持像date命令一样参数修改文件时间:

[root@web10 ~]#
ll install.log
-rw-r--r-- 1 root root 33386 07-11 16:35 install.log

最后总结下常用的文件操作与时间的关系:

1、访问时间,读一次这个文件的内容,这个时间就会更新 。比如对这个文件使用more命令。ls、stat命令都不会修改文件的访问时间。

2、修改时间,对文件内容修改一次,这个时间就会更新 。比如:vim后保存文件。ls -l列出的时间就是这个时间。

3、状态改变时间。通过chmod命令更改一次文件属性,这个时间就会更新 。查看文件的详细的状态、准确的修改时间等,可以通过stat命令 文件名。





touch 指令改变档案的时间记录。 ls -l 可以显示档案的时间记录。
参数:
a 改变档案的读取时间记录。
m 改变档案的修改时间记录。
c 假如目的档案不存在,不会建立新的档案。与 --no-create 的效果一样。
f 不使用,是为了与其他 unix 系统的相容性而保留。
r 使用参考档的时间记录,与 --file 的效果一样。
d 设定时间与日期,可以使用各种不同的格式。
t 设定档案的时间记录,格式与 date 指令相同。
--no-create 不会建立新档案。
--help 列出指令格式。
--version 列出版本讯息。

范例:
最简单的使用方式,将档案的时候记录改为现在的时间。若档案不存在,系统会建立一个新的档案。
touch file
touch file1 file2

将 file 的时间记录改为 5 月 6 日 18 点 3 分,公元两千年。
时间的格式可以参考 date 指令,至少需输入 MMDDHHmm ,就是月日时与分。
touch -c -t 05061803 file
touch -c -t 050618032000 file

将 file 的时间记录改变成与 referencefile 一样。
touch -r referencefile file将 file 的时间记录改成 5 月 6 日 18 点 3 分,公元两千年。
时间可以使用 am, pm 或是 24 小时的格式,日期可以使用其他格式如 6 May 2000。
====================================================================================
touch -d 和 date -s 的用法相同。如果没有指定日期,默认为系统日期
touch -d 18:03 file
touch -d "18:03" file
touch -d "6:03pm" file

如果没有指定时间,默认为 00:00:00
touch -d 20000506 file
touch -d "05/06/2000" file
touch -d "20000506" filetouch -d "6:03pm 05/06/2000" file
touch -d "20000506 18:03" file
touch -d "20000506 18:03:00" file











本文转自 chengxuyonghu 51CTO博客,原文链接:http://blog.51cto.com/6226001001/1642031,如需转载请自行联系原作者

免责申明:文章和图片全部来源于公开网络,如有侵权,请通知删除 server@dude6.com

用户评论
相关推荐
linux查看修改文件时间
一、查看文件时间及相关命令 1、stat查看文件时间 [root@web10 ~]#   Fi
Linux目录文件权限命令的查看修改
主要介绍了Linux 下目录文件权限(命令)的查看和修改的相关资料,需要的朋友可以参考下
PDF
43KB
2020-09-21 08:11
Linux目录文件权限命令的查看修改
在我的服务器下面有这几个文件夹同时用ls -l也可以查看到这几个文件的权限.看其中的assets文件一共有十位数,其中: 接下来就是文件修改的命令了,这里我使用的chmod这个命令.在终端输入:  表
pdf
56.50 KB
2021-08-11 03:27
Linux查看文件权限修改文件权限的方法
查看权限命令 查看目录的相关权限可以采用命令ls -lD,或者直接用ls -la 如 ls -l www.jb51.net //这里表示查看www.jb51.net目录 修改权限命令
PDF
20KB
2021-01-17 01:42
Linux查看binlog文件创建时间的命令
主要介绍了Linux下查看binlog文件创建时间的命令,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
PDF
55KB
2020-10-04 03:48
linux硬件时间修改查看
linux修改时间和日期.查看修改硬件时间 Linux时钟分为系统时钟(System Clock)和硬件(Real Time Clock,简称RTC)时钟。系统时钟
系统时间修改查看工具
有能动的多线程实现的时钟样子,因为是通过多线程,不仅可以查看时间,还可以通过时钟修改系统的时间.
RAR
0B
2018-12-09 14:17
linux查看文件编码及修改编码
通常来说,Windows中默认的文件格式是GBK(gb2312),而Linux一般都是UTF-8,所以Linux下打开windows的文件会有乱码的情况。另外,
Linux查看进程打开的文件句柄数如何修改方法
修改文件句柄数在Linux下,我们使用ulimit -n 命令可以看到单个进程能够打开的最大文件句柄数量。如果单个进程打开的文件句柄数量超过了系统定义的值,就会提到“too many files op
pdf
83.33 KB
2020-10-31 00:09
Linux系统如何查看修改文件读写权限
Linux系统下如何查看及修改文件读写权限
DOCX
0B
2018-12-27 04:54