在Linux中,我可以更改文件内容,但保留该文件的相同修改日期吗?如果是,那怎么样?感谢。
答案 0 :(得分:9)
获取文件的修改日期。
更改文件内容,然后您可以通过touch
命令更改修改日期。例如
touch -m -t 09082000 file
to change the modification time to 8 sep, 20:00.
您也可以将修改日期更改为过去,对于10/15/1998 12:30,命令将是这样的:
touch -m -t 19981015123000 file
答案 1 :(得分:1)
另一种可能性可能是一种象征性的联系?
如果您有alink->a.txt
,则更改a.txt的内容,alink的最后修改时间将不会更新。
答案 2 :(得分:1)
您可以在修改内容之前记住修改日期;内容修改后,您可以将日期修改为初始值。它可以在Linux中从命令行完成。例如:
触摸-t 09082000文件 将修改时间更改为8 sep,20:00。更多信息can be found here.
答案 3 :(得分:0)
由于我现在有一个类似的问题,并通过google找到了这个问题,因此我将提供一个简单,自动的解决方案。我将当前修改时间存储在变量CURRENT
中,然后在修改文件后,通过touch
将修改时间设置回其原始时间。请注意,获取当前时间戳有点笨拙,您可能需要对其进行一些修改。
FILE=test.txt
touch $FILE
CURRENT=$(date -r $FILE +%Y%m%d%H%M)
# run your command here
touch $FILE
touch -a -m -t $CURRENT $FILE