可能获得“旧”时间戳行为吗?

可能获得“旧”时间戳行为吗?

下载文件或解压缩文件时,时间戳不会设置为文件出现在我的硬盘上的时间,这正是我想要的。

看这个例子

~$ wget https://www.google.com/images/srpr/logo3w.png
~$ stat logo3w.png 
  File: `logo3w.png'
  Size: 7007        Blocks: 16         IO Block: 4096   regular file
Device: fd00h/64768d    Inode: 17040834    Links: 1
Access: (0664/-rw-rw-r--)  Uid: ( 1000/      ss)   Gid: ( 1000/      ss)
Access: 2012-07-25 10:58:26.000000000 +0200
Modify: 2012-04-02 04:13:37.000000000 +0200
Change: 2012-07-25 10:58:26.254385152 +0200
 Birth: -
~$ ll logo3w.png 
-rw-rw-r-- 1 ss ss 7007 Apr  2 04:13 logo3w.png

这种行为是“新的”,并且是在过去几年内发生的。

问题

是否可以禁用此功能,以便当文件写入磁盘时,它会获得我执行此操作时的时间戳?

答案1

来自 wget 手册页:

--no-use-server-timestamps

不要将本地文件的时间戳设置为服务器上的时间戳。

默认情况下,下载文件时,其时间戳设置为与远程文件中的时间戳相匹配。这允许--timestamping在后续调用中使用wget.但是,有时将本地文件的时间戳基于实际下载的时间很有用;为此目的,--no-use-server-timestamps提供了该选项。

unzip还可以-DD选择跳过恢复提取项目的时间戳。

man unzip

-D

跳过恢复提取项目的时间戳。

通常,unzip 会尝试恢复 Zip 存档中提供的提取项目的所有元信息(并且不需要特权或强加安全风险)。

通过指定 -Dunzip被告知禁止恢复从 Zip 存档条目显式创建的目录的时间戳。 [...]

重复选项-DD强制抑制所有提取的条目(文件和目录)的时间戳恢复。此选项会将所有提取的条目的时间戳设置为当前时间。

答案2

正如所见如何创建 RPM 包:

将文本添加timestamping = on~/.wgetrc

所以我想像做

timestamping = off

会做的

答案3

我的版本没有看到任何这样的选项wget。也许您可以touch下载所有内容?

相关内容