linux - 查看/修改文件的修改时间
1. 查看文件的时间
- stat 命令,查看文件的状态
stat 3.log //查看某个文件的状态 stat * //查看这个目录下所有文件及文件夹的状态(不递归)
文件时间有三种:
最近访问时间(Access):cat、less等查看文件后,该时间改变
最近更改时间(Modify):vim修改文件内容后,三个时间都改变
最近改动时间(Change):chmod修改文件权限或属性后,该时间改变
- ll --time命令
ll --time=atime //查看访问时间 ll --time=ctime //查看改动时间
不带--time,默认是mtime
2. 修改文件的时间
touch命令,后跟不同参数:
touch -a: 修改文件的访问时间
touch -m:修改文件的修改时间
touch -c: (注意)同时修改访问时间和修改时间,不创建文件,不修改改变时间
touch -t: 同时修改文件的访问时间和修改时间,格式:touch -t 201801021458.02 4.log
touch -d: 同时修改文件的访问时间和修改时间,格式:touch -d "2021-01-02 09:32:21" 3.log
举例:
1. 同时修改文件的访问时间和修改时间
touch -t 201801021458.02 4.log touch -d "2021-01-02 09:32:21" 3.log
2. 只修改文件的修改时间
touch -m -d "2010-09-08 12:23:02" 4.log
3. 只修改文件的访问时间
touch -a -d "2012-07-06 12:45:21" 4.log
4. 将一个文件的时间,修改为和另一个文件的时间相同
touch -amcr 4.log 3.log //将3.log的三个时间,都修改为和4.log一样 touch -mr 4.log 3.log //只将3.log的修改时间,修改为和4.log一样
另外,
- touch + 文件名
a. 若文件名存在,则将该文件的三个时间,都改为当前时间(若是文件夹,则只修改文件夹,不递归)
b. 若文件名不存在,则新建一个文件,三个时间都是当前时间
- touch *
修改当前目录下的所有文件(不递归)