linux修改文件的时间
❶ 在linux中如何查看文件的修改日期
有时候可能需要检查有关文件的详细信息,例如文件的修改日期。当你要检查文件的最后编辑时间时,本文可能会派上用场。在本文将学习4种方法查看文件的修改日期。
使用stat 命令
stat 命令 可以显示文件属性的详细信息,比如最近一次访问和修改文件的时间、文件大小等信息,使用起来比较简单,命令后面只需要加上文件名就可以:
[root@localhost ~]# stat hello_script.sh
File: ‘hello_script.sh’
Size: 31 Blocks: 8 IO Block: 4096 regular file
Device: fd00h/64768d Inode: 67169379 Links: 1
Access: (0755/-rwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root)
Context: unconfined_u:object_r:admin_home_t:s0
Access: 2020-10-15 19:13:24.628009932 +0800
Modify: 2020-10-15 19:07:18.266426499 +0800
Change: 2020-10-15 19:11:48.227856412 +0800
Birth: -
从上面的输出中,我们可以看到文件的访问日期、文件的修改日期、文件权限的修改日期以及其他参数。
如果只希望查看文件的修改日期,而不考虑所有其他信息,运行以下命令:
[root@localhost ~]# stat -c %y hello_script.sh
2020-10-15 19:07:18.266426499 +0800
-c选项用于指定自定义格式代替默认的输出,而'%y'标志显示上次修改时间。对于文件夹,语法保持不变。只需将文件名替换为文件夹名称即可。
使用date命令
date命令的用法是显示当前日期。但是当与-r选项一起使用时,可以显示文件的最后修改日期,如下所示:
[root@localhost ~]# date -r hello_script.sh
Thu Oct 15 19:07:18 CST 2020
使用ls -l命令
ls -l命令通常用于使用长列表显示有关文件的其他信息,例如文件权限和所有者,大小和创建日期。可以添加-t选项,这样就可以按照文件的修改时间来排列:
[root@localhost ~]# ls -lt
或者
[root@localhost ~]# ll -t
total 288
drwxr-xr-x. 2 root root 177 Oct 16 14:36 b
drwxr-xr-x. 2 root root 177 Oct 16 14:36 a
-rwxr-xr-x. 1 root root 119 Oct 15 19:20 backup_script.sh
-rwxr-xr-x. 1 root root 31 Oct 15 19:07 hello_script.sh
-rw-r--r--. 1 root root 227 Oct 13 16:39 content.txt
-rw-r--r--. 1 root root 277159 Oct 12 14:37 a.txt
drwxr-xr-x. 2 root root 195 Aug 6 14:12 Files
-rw-------. 1 root root 1284 Dec 29 2019 anaconda-ks.cfg
使用httpie工具
另一种检查文件的修改日期的方法是使用httpie ,是HTTP命令行客户端工具。该工具通常用于与HTTP服务器和API交互,还可以检查驻留在web服务器上文件的修改时间。
首先需要确保安装了python的pip包管理工具,然后安装httpie工具:
在 Centos 7/RHEL7中,运行以下命令安装httpie:
[root@localhost ~]# yum -y install python-pip
[root@localhost ~]# pip install --upgrade pip
[root@localhost ~]# pip install httpie
在Ubuntu / Deepin / Debian中运行以下命令安装httpie:
$ sudo apt install httpie
安装完成之后,那么如何查看web服务器上文件的修改时间呢?语法如下:
http -h [url] | grep 'Last-Modified'
例如,从www. linux probe.com网站中,查看一张.png格式的图片修改时间:
[root@localhost ~]# http -h https://www.linuxprobe.com/wp-content/uploads/2020/06/6-1.png | grep -i 'Last-Modified'
Last-Modified: Fri, 05 Jun 2020 14:26:11 GMT
总结
在本文中,介绍了各种方法,可以使用这些方法列出文件的最后修改日期,甚至可以使用httpie工具列出web服务器上的文件的最后修改日期。
❷ linux 下怎样修改一个目录及其子目录下的所有文件的 修改时间
1、linux一般修改文件时间使用touch命令,要修改一个目录及所有子目录下的文件,可以使用find命令,结合*通配符进行批量查找,同时执行touch命令即可。
2、具体的命令如下:
find.-name'*'-exectouch{};
3、效果如下图所示,统一为一个时间了。
❸ linux 怎么修改多个文件里的时间
touch命令可用于修改文件时间,如果批量修改文件和目录,则使用
find/home/www/site-exectouch-c-m-t201101110000{};
即可把/home/www/site下的所有文件和目录都改变修改时间。
❹ ubuntu linux中怎样修改文件的“修改时间”
现在我们新建一个空白文件ubuntugege.txt,看到当前的文件访问时间和修改时间是一样的。
用以下命令进行修改:
touch -m -d "2000-01-01 10:10:10" ubuntugege.txt
嘿,文件修改时间变成了2000-01-01 10:10:10,这下我们也做了个小小的穿越呀!
当然,这个命令还有更多其它高级的用法,比如:你可以读取一个已存在的文件的修改时间再修改到指定的文件上,相当于复制“修改时间”到别的文件上,大家运行知老芦touch --help查看手册。
用法:touch [选项]... 文件...Update the access and modification times of each FILE to the current time.A FILE argument that does not exist is created empty, unless -c or -his supplied.A FILE argument string of - is handled specially and causes touch tochange the times of the file associated with standard output.Mandatory arguments to long options are mandatory for short options too. -a 只更改访问时间 -c, --no-create 不创建任何文件 -d, --date=字符串 使用指定字符串表示时间而非当前时间 -f (忽略) -h, --no-dereference 会影响符搭带号链接本身,而非符号链接所指示的目的地 (当系统支持更改含碰符号链接的所有者时,此选项才有用) -m 只更改修改时间 -r, --reference=FILE use this file's times instead of current time -t STAMP use [[CC]YY]MMDDhhmm[.ss] instead of current time --time=WORD change the specified time: WORD is access, atime, or use: equivalent to -a WORD is modify or mtime: equivalent to -m --help 显示此帮助信息并退出 --version 显示版本信息并退出请注意,-d 和-t 选项可接受不同的时间/日期格式。
❺ linux修改系统时间命令
inux修改时间命令是date-s+时分秒。
修改linux系统时间。
root使用date指令:date -s
1、只修改日期,不修改时间,输入:
date -s 2021-04-02。
2、只修改时间,输入:
date -s 12:00:00。
3、同时修改日期时间,注意要加双引号,日期与时间之间有一空格,输入:
date -s “2021-04-02 10:25:00”
4、修改完后,记得输入:
clock -w。
把系统时间写入CMOS修改时区不重启。
在root下。
复制相应的时区文件,替换系统时区文件:
cp /usr/share/zoneinfo/主时区/次时区 /etc/localtime
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
5、文件复制命令—cp cp [参数] [源地址] [目的地址]主要参数描述如下:-a :此参数和同时指定“-dpR”参数相同 -d :在复制有符号连接的文件时,保留原始的连接。 -f :强行复制文件,不管要复制的文件是否已经存在于目标目录。 -I :覆盖现有文件之前询问用户。
❻ Linux命令如何修改文件的三个时间
touch [OPTION]... FILE... 修改文件时间戳
其实touch命令不仅可以修改文件时间戳,还可以创建文件。即当touch后的文件名不存在时,系统会自动创建文件。
一般默认会将文件的访问时间和内容修改时间更新到当前时间。
-a 只改变访问时间
-m 只改变内容修改时间
-c 不创建任何文件
-d 设置修改的时间
-t 用[[CC]YY]MMDDhhmm[.SS]
格式代替当前时间
cc 指定年份的前两位数字。
yy 指定年份的后两位数字。
mm指定一年的哪一月(从 01 到 12)。
dd指 定一月的哪一天(从 01 到 31)。
hh指 定一天中的哪一小时(从 00 到 23)。
mm指 定一小时的哪一分钟(从 00 到 59)。
ss指定一分钟的哪一秒(从 00 到 59)。
❼ linux修改文件创建时间
clock显示的为CMOS记录的时间,如果要以date的时间为准,那么设置完date之后,记得用clock -w命令写入CMOS,使两个时间一致。
Linux下修改文件创建时间(修改文件更改时间)
进到要改的文件目录里
find . -name “*” -exec touch ‘{}’ \;
注:最后一定要加分号,{}外一定要加单引号,*表示所有的文件(. 代表当前目录下)
如果只修改单个文件
1.创建文件 touch tm //名字随便起
2.touch -r tm liunx-2.6.30.4(要改的文件名)//就是把Linux-2.6.30.4文件的时间改为tm文件的时间
使用权限:所有使用者
使用方式:
touch [-acfm]
[-r reference-file] [--file=reference-file]
[-t MMDDhhmm[[CC]YY][.ss]]
[-d time] [--date=time] [--time={atime,access,use,mtime,modify}]
[--no-create] [--help] [--version]
file1 [file2 ...]
说明:
touch 指令改变档案的时间记录。 ls -l 可以显示档案的时间记录。
参数:
a 改变档案的读取时间记录。
m 改变档案的修改时间记录。
c 假如目的档案不存在,不会建立新的档案。与 --no-create 的效果一样。
f 不使用,是为了与其他 unix 系统的相容性而保留。
r 使用参考档的时间记录,与 --file 的效果一样。
d 设定时间与日期,可以使用各种不同的格式。
t 设定档案的时间记录,格式与 date 指令相同。
--no-create 不会建立新档案。
--help 列出指令格式。
--version 列出版本讯息。